为什么 QCPColorMap 没有为 QCPRange 设置我的值?
why QCPColorMap is not setting my value for QCPRange?
我对颜色图大小调整有疑问。
我设置了最大和最小x尺寸,但是绘制地图时,地图的右边框大于我在代码中输入的最大x尺寸:
qMap->data()->setRange(QCPRange(data->m_xmin, data->m_xmax), QCPRange(data->m_ymin, data->m_ymax));
为什么我的变量m_xmax的值等于3004.86,而地图显示的边框大于3005,大概是3005.5?
与左侧类似。
auto plot = ui->pCustomPlot;
QSize size = data->getSize();
plot->setInteractions(QCP::iRangeDrag|QCP::iRangeZoom);
plot->clearPlottables();
QCPColorMap *qMap = new QCPColorMap(plot->xAxis, plot->yAxis);
qMap->data()->setSize(size.width(),size.height());
qMap->data()->setRange(QCPRange(data->m_xmin, data->m_xmax), QCPRange(data->m_ymin, data->m_ymax));
QVector<QVector<PointRS>> arr(data->getMatrix();
for (int i = 0; i < size.width(); i++)
{
for (int j = 0; j < size.height(); j++)
{
qMap->data()->setCell(i, j, arr[j][i].a);
}
}
qMap->setGradient(QCPColorGradient::gpHot);
qMap->rescaleDataRange();
plot->xAxis->setLabel("x");
plot->yAxis->setLabel("y");
plot->rescaleAxes();
RescaleCustomPlot();
plot->replot();
您尝试过使用 setTightBoundary 吗?
我对颜色图大小调整有疑问。 我设置了最大和最小x尺寸,但是绘制地图时,地图的右边框大于我在代码中输入的最大x尺寸:
qMap->data()->setRange(QCPRange(data->m_xmin, data->m_xmax), QCPRange(data->m_ymin, data->m_ymax));
为什么我的变量m_xmax的值等于3004.86,而地图显示的边框大于3005,大概是3005.5? 与左侧类似。
auto plot = ui->pCustomPlot;
QSize size = data->getSize();
plot->setInteractions(QCP::iRangeDrag|QCP::iRangeZoom);
plot->clearPlottables();
QCPColorMap *qMap = new QCPColorMap(plot->xAxis, plot->yAxis);
qMap->data()->setSize(size.width(),size.height());
qMap->data()->setRange(QCPRange(data->m_xmin, data->m_xmax), QCPRange(data->m_ymin, data->m_ymax));
QVector<QVector<PointRS>> arr(data->getMatrix();
for (int i = 0; i < size.width(); i++)
{
for (int j = 0; j < size.height(); j++)
{
qMap->data()->setCell(i, j, arr[j][i].a);
}
}
qMap->setGradient(QCPColorGradient::gpHot);
qMap->rescaleDataRange();
plot->xAxis->setLabel("x");
plot->yAxis->setLabel("y");
plot->rescaleAxes();
RescaleCustomPlot();
plot->replot();
您尝试过使用 setTightBoundary 吗?