【问题标题】:Set interval for X and Y QwtPlotZoneItem设置 X 和 Y QwtPlotZoneItem 的间隔
【发布时间】:2016-11-21 15:55:21
【问题描述】:

我需要使用QwtPlotZoneItem 类在图表上绘制一个区域。我需要为 X 轴和 Y 轴设置不同的间隔,我该怎么做?

我的QwtPlotZoneItem 的方向是垂直,因此根据文档,如果我设置间隔,它将仅应用于 X 轴。

"对于水平区域,间隔与 y 轴有关,对于 垂直区域它与x轴相关。”

我的构造函数集:

setOrientation( Qt::Vertical );
setInterval( initDate, endDate );

基本上,我需要在我的图表上创建多个代表区域的矩形,例如:

Qt 5.3.2

Qwt 6.1.0

【问题讨论】:

    标签: c++ qt qwt


    【解决方案1】:

    我试图为我的目的使用不正确的类。我在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();
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2017-09-24
      • 2012-04-09
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多