当前位置: 首页 > news >正文

电子商务网站推广方法/长沙网站seo优化公司

电子商务网站推广方法,长沙网站seo优化公司,外贸国际站有哪些平台,如何自己制作微网站QT下开源图表库比较少,用的比较多的就是QWT, QWT提供的API不够简洁,绘图过程也比较复杂. 这一点不如Java的JFreeChart方便. 一. 编译安装 QWT最新版本是6.1, QWT5与QWT6一点也不兼容,windows下编译非常简单: cd $(QWT_ROOT) qmake nmake QWT5.1的版本支持VC6编译,QWT6只支持V…

QT下开源图表库比较少,用的比较多的就是QWT, QWT提供的API不够简洁,绘图过程也比较复杂. 这一点不如Java的JFreeChart方便.

一. 编译安装

     QWT最新版本是6.1, QWT5与QWT6一点也不兼容,windows下编译非常简单:

     cd $(QWT_ROOT)

     qmake 

     nmake 

     QWT5.1的版本支持VC6编译,QWT6只支持VS编译,不能用vc6编译.  

 二. 编译运行

     vs编译示例代码,报错: moc_plot.obj : error LNK2001: 无法解析的外部符号 "public: static struct QMetaObject const QwtPlot::staticMetaObject" (?staticMetaObject@QwtPlot@@2UQMetaObject@@B)

      解决方案: 在*.pro 加上QWT_DLL宏定义即可

 

三. 自定义XY轴

     示例代码分析发现,大部分示例xy轴都是默认double数据显示,可以通过子类化QwtScaleDraw来自定义xy轴显示数据,代码如下:

Cpp代码  
  1. #include <QApplication>  
  2. #include <QTime>  
  3. #include <qwt/qwt_plot.h>  
  4. #include <qwt/qwt_plot_curve.h>  
  5. #include <qwt/qwt_legend.h>  
  6. #include <qwt/qwt_plot_grid.h>  
  7. #include <qwt/qwt_symbol.h>  
  8. #include <qwt/qwt_plot_zoneitem.h>  
  9. #include "plot.h"  
  10. #include <qwt/qwt_picker_machine.h>  
  11. #include <qwt/qwt_scale_draw.h>  
  12.   
  13.   
  14. // 自定义y轴的显示时标  
  15. class TimeScaleDraw: public QwtScaleDraw  
  16. {  
  17. public:  
  18.     TimeScaleDraw()  
  19.     {  
  20.     }  
  21.   
  22.     virtual QwtText label( double v ) const  
  23.     {  
  24.         QDateTime dt;  
  25.         dt.setTime_t((int)v);  
  26.         return dt.toString("yyyy-MM-dd\n hh:mm:ss");  
  27.     }  
  28. private:  
  29.     QTime baseTime;  
  30. };  
  31.   
  32.   
  33. int GetTime(const QString &pTime)  
  34. {  
  35.     QDateTime dt=QDateTime::fromString(pTime,"yyyy-MM-dd hh:mm:ss");  
  36.     return dt.toTime_t();  
  37. }  
  38.   
  39. int main(int argc,char **argv)  
  40. {  
  41.     QApplication app(argc,argv);  
  42.   
  43.     QwtPlot plot;  
  44.     plot.setTitle("Plot Demo");  
  45.     plot.setCanvasBackground(Qt::white);  
  46.     plot.setAxisScale(QwtPlot::yLeft,0.0,10.0);  
  47.     plot.insertLegend(new QwtLegend(),QwtPlot::RightLegend);  
  48.   
  49.     // 设置自定义的x坐标值(以时标为x轴)  
  50.     plot.setAxisScaleDraw( QwtPlot::xBottom,new TimeScaleDraw());  
  51.     plot.setAxisScale(QwtPlot::xBottom,GetTime("2013-09-29 00:00:00"), GetTime("2013-09-30 00:00:00"),14400); // 设置起始点  
  52.   
  53.     // 网格  
  54.     QwtPlotGrid *grid=new QwtPlotGrid();  
  55.     //grid->setMajorPen( Qt::white, 0, Qt::SolidLine );  
  56.     //grid->setMinorPen( Qt::gray, 0 , Qt::SolidLine );  
  57.     grid->attach(&plot);  
  58.   
  59.     // 数据标示带  
  60.     QwtPlotZoneItem* zone = new QwtPlotZoneItem();  
  61.     zone->setPen( Qt::darkGray );  
  62.     zone->setBrush( QColor( "#834358" ) );  
  63.     zone->setOrientation( Qt::Horizontal );  
  64.     zone->setInterval( 3.8, 5.7 );  
  65.     zone->attach(&plot);  
  66.   
  67.     // 曲线  
  68.     QwtPlotCurve *curve=new QwtPlotCurve;  
  69.     curve->setTitle("Some Points");  
  70.     curve->setPen(Qt::blue,0.5);  
  71.     curve->setRenderHint(QwtPlotItem::RenderAntialiased,true);  
  72.   
  73.     // 黄色小圆圈标记曲线上的数据  
  74.     QwtSymbol *symbol=new QwtSymbol(QwtSymbol::Ellipse,QBrush(Qt::yellow),QPen(Qt::red,2),QSize(8,8));  
  75.     curve->setSymbol(symbol);  
  76.   
  77.     // 数据源  
  78.     QPolygonF points;  
  79.     /* 
  80.     points << QPointF( 0.0, 4.4 ) <<QPointF(0.6,3.9)<< QPointF( 1.0, 3.0 ) 
  81.         << QPointF( 2.0, 4.5 ) << QPointF( 3.0, 6.8 ) 
  82.         << QPointF( 4.0, 7.9 ) << QPointF( 5.0, 7.1 ); 
  83.     */  
  84.   
  85.     points<<QPointF(GetTime("2013-09-29 00:00:00"),4.5)  
  86.         <<QPointF(GetTime("2013-09-29 04:00:00"),3.9)  
  87.         <<QPointF(GetTime("2013-09-29 08:00:00"),3.0)  
  88.         <<QPointF(GetTime("2013-09-29 12:00:00"),7.9);  
  89.   
  90.     curve->setSamples( points );  
  91.   
  92.         // 添加曲线  
  93.     curve->attach(&plot);  
  94.   
  95.     // 曲线跟踪线(拷贝自$(QWT_ROOT)/playground/curvetracker)  
  96.     CurveTracker* tracker = new CurveTracker( plot.canvas() );  
  97.     tracker->setStateMachine( new QwtPickerTrackerMachine() );  
  98.     tracker->setRubberBandPen( QPen( "MediumOrchid" ) );  
  99.   
  100.     plot.resize(600,400);  
  101.     plot.show();  
  102.   
  103.     return app.exec();  
  104. }  

 

    运行截图:

    

 


http://www.lbrq.cn/news/1607167.html

相关文章:

  • 网站外包公司/搜索推广广告
  • 工商局网站清算组备案怎么做/苏州seo
  • 网站维护流程图/seo网站优化推广教程
  • 湖州建设局投标网站/商务软文写作300
  • 签名设计网站/靠谱seo外包定制
  • wordpress建教育教学网站/数据分析师培训需要多少钱
  • 做知识内容的网站与app/新手怎么推广自己的店铺
  • 黄岩做网站/最近三天发生的重要新闻
  • 网站源码获取在线/郑州网站关键词优化公司哪家好
  • 做网站设计的提成点是多少/英文外链平台
  • 重庆建设汽车系统股份有限公司/seo快速排名上首页
  • wordpress登陆失败/windows优化工具
  • 苏州企业网站设计制作/百度霸屏推广靠谱吗
  • 分类网站怎么做项目/海口百度seo公司
  • 做网站多少钱西宁君博领衔/百度竞价排名叫什么
  • flash网站全屏代码/制作自己的网站
  • 做婚礼邀请函网站/seo点击软件
  • mysql开发网站开发/怎样设计一个网页
  • 怎么给网站有一字做标记/seo搜索引擎优化薪酬
  • 一个小胖子从网站做任务的色情故事/短视频推广渠道
  • 怎么让别人看到自己做的网站/重庆seo俱乐部
  • p图软件哪个好用/网站建设优化推广
  • 大良营销网站建设价格/如何提高网站排名seo
  • 关注公众号在哪里查找/手机端关键词排名优化软件
  • 广州网站建设企业/开封网站快速排名优化
  • 网上挣钱/自动app优化下载
  • 陕西网站建设企业/googleplaystore
  • 不知名网站开发/搜索引擎的三个技巧
  • 鄂尔多斯网站建设/可以引流推广的app
  • 温州微网站制作公司哪家好/成都官网seo厂家
  • lumerical——锥形波导偏振转换
  • 6.1、Redis多级缓存原理和优化、Redis部分参数优化调整
  • python工具方法51 视频数据的扩充(翻转、resize、crop、re_fps)
  • 2025年6月电子学会青少年软件编程(C语言)等级考试试卷(四级)
  • 云轴科技ZStack AI翻译平台建设实践-聚焦中英
  • python匿名函数lambda