有没有直接向QCustomPlot传递QAbstractItemModel的方法?目前,我正在为Xval和yVal定义两个QVector<double>。当我必须绘图时,我会从QAbstractItemModel更新这两个向量,以启动绘图功能。
QCustomPlot是否可以接受QAbstractItemModel
发布于 2015-05-15 12:31:05
在QCustomPlot中没有对QAbstractItemModel的直接支持。我不确定您希望QCustomPlot如何绘制QAbstractItemModel的内容。正如您所知道的,模型可以是简单的模型,也可以是复杂的模型,甚至是分层模型。对于像QCustomPlot这样的简单2D绘图来说,这已经足够了。但是似乎有一种方法可以将QAbstractItemModel子类的数据赋值给QCustomPlot,那就是使用QCPDataMap。
您应该在QCPDataMap中填充模型的数据,并将其分配给plot。大概是这样的:
QCPDataMap *data = new QCPDataMap();
for(int i=0; i<count; i++)
data->insertMulti(data->constEnd(), x[i], QCPData(x[i], y[i]));
plot->graph()->setData(data);您可以使用x和y值在模型中生成QCPDataMap,并将其指针分配给绘图。
https://stackoverflow.com/questions/30251044
复制相似问题