您的位置:首页 > 编程语言 > Qt开发

Qwt学习

2015-04-22 09:15 375 查看
<span style="font-family: Arial, Helvetica, sans-serif; background-color: rgb(255, 255, 255);">因为做项目要使用到一些绘图的东西,所以开始学习一下,因为也是初学,可能会比较粗糙。</span>
首先观察源码
class QWT_EXPORT QwtPlot: public QFrame, public QwtPlotDict
QFrame为其提供QWIDGET的框架,
QwtPlotDict用来管理绘制项plotitems,这些plot items可以是曲线,标记,格子以及继承自QwtPlotItem的子类
QwtScaleEngine用来计算每个poltitems的比例
在轴上的比例变换可以使用QwtScaleDiv
一个QwtPlot除了x和y,还有top和bottom轴,第五个是axisCnt。
枚举从0开始,第五个为4,其中一共有四个轴,另一个是LegendPosition,即为图例的位置。
绘画组件可以是曲线(QwtPlotCurve)、标记(QwtPlotMarker)、网格(QwtPlotGrid)、或者其它从QwtPlotItem继承的组件。具体细节可参考http://blog.csdn.net/evense/article/details/10087501
QwtPlotCanvas即为qwtplot的类似画布的东西所有的items都在这里展示
QwtPlotCanvas *canvas = new QwtPlotCanvas();
canvas->setFocusIndicator( QwtPlotCanvas::CanvasFocusIndicator );
canvas->setFocusPolicy( Qt::StrongFocus );
canvas->setPalette( Qt::black );
setCanvas( canvas );
网格:
<pre name="code" class="cpp">    QwtPlotGrid *grid = new QwtPlotGrid;
grid->enableXMin( true );
grid->setMajorPen( Qt::gray, 0, Qt::DotLine );
grid->setMinorPen( Qt::darkGray, 0, Qt::DotLine );
grid->attach( this );
轴:
<pre name="code" class="cpp">    // axis
setAxisScale( QwtPlot::yLeft, 0.0, 1000.0 );
setAxisScale( QwtPlot::xBottom, 0.0, 1000.0 );

                                            
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  plot qt Qwt