Qt绘图 使用QWT绘制科学图表、绘图.docx

上传人:王** 文档编号:1403976 上传时间:2024-07-06 格式:DOCX 页数:5 大小:206.40KB
下载 相关 举报
Qt绘图 使用QWT绘制科学图表、绘图.docx_第1页
第1页 / 共5页
Qt绘图 使用QWT绘制科学图表、绘图.docx_第2页
第2页 / 共5页
Qt绘图 使用QWT绘制科学图表、绘图.docx_第3页
第3页 / 共5页
Qt绘图 使用QWT绘制科学图表、绘图.docx_第4页
第4页 / 共5页
Qt绘图 使用QWT绘制科学图表、绘图.docx_第5页
第5页 / 共5页
亲,该文档总共5页,全部预览完了,如果喜欢就下载吧!
资源描述

《Qt绘图 使用QWT绘制科学图表、绘图.docx》由会员分享,可在线阅读,更多相关《Qt绘图 使用QWT绘制科学图表、绘图.docx(5页珍藏版)》请在优知文库上搜索。

1、QWt是一个基于1.GP1.版权协议的开派项目,其目标是供应组2D的囱体库显示技术领域的数据.数抠源以浮点数组或范围的方式供血,珀出方式可以是CUrVeS(曲线),Slider(滚动条),DiaIS(圆盘),8mpasses(仪去盘)等等。该工具库菸于CH开发,所以也绢承了Qt的跨平台特性,据原作者文档所说,该项目在Qt-winO-x11/QbembeddedIqVfb环境)上都测试过,运行正常.项目的主页在:在网上搜了一下,发觉关于qwt的中文资料实在很少,基本上只有关于漏谛和安装的文章.事实上经过笔者实践.QWt的编译和运行实在乏善可陈,qmakamake就可以搞定.没什么可mem。的东西

2、,所以这篇文章将以扫白为主,介绍QWt的feature当然根据正常的依次,我们还是从编译安装起先”从SVn服务器上下我最新代码:SVneo进入qwtH日,运行你电脑上qt4对应的qmake,再运行make编译,如笔者环境中是Scdqwt$exportPATH=usrlocal,TrolltechlQt4.5.1.bin/:SPATH$qmake$make编译要花个几分钟的时间,胜利后在Iib不会生成IigwtSO文件,并且examples也参加编译,生成的binary在exampesin下,我们可以运行这些例子初步杳石qwt的功能,SeXPOrt1.D_UBRARY_PATH=$PWDmbSC

3、dexamplesbin$./simpleSimPle是qwt自带的例子中最简洁的一个,一共只有一百来行的代码,实现了数学中的正弦函数(Sino)和余弦函数(8S()曲线.如下图:这个例子里用到的核心类彳了四个(以下内容是他者的理斛,有可能彳j不对的地方,清酌情阅读):OwtPIot类似一个2D绘图的容涔,里面可以放及他的QWlPIoMem派生类对象,比如本例f中运用的QwtPIotMarker格):setAxisScale(xBottom,0.0.10.0)H横坐标从0到10.XBottom衣示横坐标的方向从卜往上setAxisTitle(y1.ft,*y-);setAxisScae(y1.

4、ft,-i.,1O);纵坐标一1到1.y1.efl我示纵坐标的方向从左到右2、潦加正弦余弦曲线UInsertnewcurvesQwtPIotCurve,cSin=newQwtPlotCurve(y=sin();#ifQT_VERSION=0040000cSin-setRenderHint(QwtPlotltem::RenderAntialiased);#endifCSin-setPen(QPen(Qt:red);/红色llll线cSiattach(this);QvrtPIotCurve*cCos=newQwtPlotCurve(y=s(x):#ifQT,VERSION=0040000cCos-

5、setRerxirHint(QwtPlotitem:RenderAntiaIiaSed);#endifCCOS-setPen(QPen(Qt:blue)y/收色曲线cCos-a11ach(this);3、设置曲线的数据内容UCreatesinandcosdatacSin-setData(FunctonData(:sin);cCos-setData(FunctionData(:cos);4、添加横纵标尺级作为坐标的参照/InsertmarkersU.ahorizontallineaty=O.QwtPIOtMarker,mY=newQwtPIotMarkerO;mY-set1.abel(QStri

6、ng:from1.atin1(y=O*);mY-set1.abelAlignment(Qt:AlignRight|Qt:AlignTop);mY-set1.ineStyle(QwtPlotMarker:HiJne)*般的方向mYsYValue(O.O)y/标尺线住在y=0的位置mY-attach(this);H.averticallineatx=2,piQvztPIotMarker,m-newQwtPIotMarkerO;mX-set1.abel(QString:from1.atin1(x=2pi):mX-set1.ablAlignmnt(Qt:IAIign1.eftQtAlignBottom

7、);mX-sei1.abelOrientation(Qt:Vertical);mX-set1.ineStyle(QwtPIotMarkeriiV1.ine):mX-set1.inePen(QPen(Qt:black.O,QtQashDot1.ine);mX-setXValu(2.0,M_PI)W该标线画在x-2PI的位置m-attach(this);同样的功能假如用Qt来写的话须要号大量的绘图代码,比较麻烦,但运用QWl的封装库代码更00I1.更简洁理解和维护,在这个例了中运用Qwt的优势体现得可能还不太明显,相比而言图难,些的图表更能体现QWt的优超性。再来几个例子的裁图:Xbode,v*ZmPMtMGDampingFactor0仝会FrequencyResponseofaSecond-OrderSystemlpipn一dEVAmplitudePhaseCursorPos:PressleftmousebuttonInplotregion怎么样,这几个例子还是满炫的吧?总的来说这个库的好用性还是比较强的,值得试.有爱好的同学不妨也下载卜来自己玩一玩。

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > IT计算机 > 图形图像

copyright@ 2008-2023 yzwku网站版权所有

经营许可证编号:宁ICP备2022001189号-2

本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!