我需要使用QwtPlotZoneItem
类在图表上绘制区域。我需要为X轴和Y轴设置不同的间隔,我该怎么做?
QwtPlotZoneItem
的方向是垂直,因此根据文档,如果我设置的时间间隔仅适用于X轴。
“对于水平区域,间隔与y轴相关,对于a 垂直区域与x轴有关。“
我的构造函数设置:
setOrientation( Qt::Vertical );
setInterval( initDate, endDate );
基本上,我需要的是在我的图表上创建代表区域的多个矩形,例如:
Qt 5.3.2
Qwt 6.1.0
答案 0 :(得分:0)
我试图为我的目的使用不正确的类。我在documentation中找到了注释:
"用于显示x和y坐标有界的区域 QwtPlotShapeItem"
QwtPlotShapeItem 类完全符合我的需要。
我基本上需要设置画笔并创建矩形,例如:
QwtPlotShapeItem *shapeItem = new QwtPlotShapeItem();
shapeItem->setBrush(QColor(255,255,255, 0));
shapeItem->setPen(QColor(Qt::transparent), 0.0, Qt::SolidLine);
// TopLeft - BottomRight
QRect myRect(QPoint(startDate, yUpperPos), QPoint(endDate, yLowerPos));
shapeItem->setRect( QRectF(myRect) );
shapeItem->attach(myQwtPlot);
myQwtPlot->replot();