qcustomplot使用——绘制折线图

张三和李四的家 张三和李四的家     2022-10-21     235

关键词:

    //初始化数据
    QVector<double> temp;
    for (int var = 0; var < 25; ++var) 
        if (rand()%2) 
            temp.append(var);
        else
            temp.append(20);
        
    
    QVector<double>time;
    for (int var = 0; var < 25; ++var) 
        time.append(var);
    
    //设置坐标轴的范围
    ui->CustomPlot->xAxis->setRange(0,24);
    ui->CustomPlot->yAxis->setRange(0,40);
     //添加图层,填充数据
    ui->CustomPlot->addGraph(0)->setName("Temp/Time");
    ui->CustomPlot->graph(0)->setData(time,temp);
    QPen pen(Qt::green, 3, Qt::DashDotLine, Qt::RoundCap, Qt::RoundJoin);
    ui->CustomPlot->graph(0)->setPen(pen);

对QCustomPlot的认识
QCustomPlot是一个核心类,需要在另外添加一些属性类,即可完成目标图表的绘制。

一个QCustomPlot类有一些属性。
1. 四个轴,正常情况下只出现两个轴,xAxis和yAxis。
2. 取出任意的一种轴进行说明。
3.
4. 轴(axis)和刻度(tick),然后轴和刻度又有各自的属性。通过操作这些属性即可完成一些目标的功能实现。
5. 以下是一些功能的实现函数
6.

    yAxis->setTickLabelColor(QColor("red"));
    yAxis->setAutoTickStep(false);//设置轴的刻度“跳跃”显示,默认为true
//    AxisType 设置轴出现的位置,上,下,左,右
    yAxis->setAutoTickLabels(true);
    yAxis->setTickLabelType(QCPAxis::ltDateTime);//设置轴刻度的显示类型,一种为数字,一种为时间。设置后可以设置数据显示的格式化。
    yAxis->setNumberFormat("hello");//一个有五种格式化方法,分别有其不同的作用,但是最后一种“hello”的没有看错效果。
    yAxis->setDateTimeFormat("hh:mm:ss");
    yAxis->setTickLabelSide(QCPAxis::lsOutside);//设置轴刻度显示的方面,选项为in或者out
    yAxis->setTickLabelPadding();//设置轴刻度与轴之间的距离
    yAxis->setTickLabelRotation(40);//设置轴刻度的显示方向为倾斜向下
    yAxis->setTickLabels(false);//设置轴刻度是否显示
    yAxis->setTickLength(20,0); //设置轴刻度的长度

    yAxis->setTickStep(1);
    yAxis->setAutoTickStep(false);//设置轴刻度的一跳为1


//    默认类型刻度类型为线性类型
    ui->CustomPlot->yAxis->setScaleType(QCPAxis::stLogarithmic);
    ui->CustomPlot->yAxis->setScaleType(QCPAxis::stLinear);
  //设置不显示子刻度
    yAxis->setSubTickLength(0);
//checkBox控件置顶层
    ui->checkBox->raise();
void mainWidget::on_checkBox_clicked(bool checked)

    qDebug() << checked;
    if (checked) 
        ui->CustomPlot->setInteractions(QCP::iRangeDrag | QCP::iRangeZoom );
     else 
        ui->CustomPlot->setInteraction(QCP::iRangeDrag,false);//一个鼠标拖拽
        ui->CustomPlot->setInteraction(QCP::iRangeZoom,false);//一个滚轮缩放
    

待更。。。

python使用matplotlib可视化折线图在可视化图像中同时绘制多条折线图

python使用matplotlib可视化折线图、在可视化图像中同时绘制多条折线图目录python使用matplotlib可视化折线图、在可视化图像中同时绘制多条折线图 查看详情

vue使用echarts,绘制折线图

参考技术A需要展示某个月用户在不同时间的充电次数统计 查看详情

使用 JSON 绘制具有多条线的单个 Google 折线图

】使用JSON绘制具有多条线的单个Google折线图【英文标题】:DrawingaSingleGoogleLineChartwithmultiplelinesusingJSON【发布时间】:2012-10-2023:29:17【问题描述】:我正在尝试根据从mysql数据库接收到的数据绘制折线图。从数据库中我有这些数... 查看详情

使用 AngularJS 在 Apache Zeppelin 中绘制多条线(折线图)

】使用AngularJS在ApacheZeppelin中绘制多条线(折线图)【英文标题】:Plottingmultiplelines(linechart)inApacheZeppelinusingAngularJS【发布时间】:2017-05-1400:40:25【问题描述】:我正在尝试使用AngularJs和ChartJS在ApacheZeppelin中绘制多个折线图。我... 查看详情

如何使用 webrequest 使用 Json 数组绘制折线图

】如何使用webrequest使用Json数组绘制折线图【英文标题】:HowtoplotalinegraphusingJsonarrayusingwebrequest【发布时间】:2016-04-1218:29:08【问题描述】:首先,我对C#和Json很陌生。我想在C#GUI中根据mysql表数据绘制图表。我制作了一个PHP文件... 查看详情

ios动画绘制线条颜色渐变的折线图

...示数据的变化。网络上有很多绘制折线图的demo,有的也使用了动画,但是线条颜色渐变的折线图的demo少之又少,甚至可以说没有。该Blog阐述了动画绘制线条颜色渐变的折线图的实现方案,以及折线图线条颜色渐变的实现原理,... 查看详情

如何使用python的pandas库绘制折线图

参考技术A我们经常会使用Python的Pandas绘制各种数据图形,那么如何使用它绘制折线图呢?下面我给大家分享一下。工具/材料Pycharm01首先我们需要打开Excel软件准备需要的数据,这里多准备几列数据,一列就是一条折线,如下图... 查看详情

使用嵌套字典绘制多条线,并将未知变量绘制到折线图

】使用嵌套字典绘制多条线,并将未知变量绘制到折线图【英文标题】:PlottingmultiplelineswithaNestedDictionary,andunknownvariablestoLineGraph【发布时间】:2022-01-1903:09:41【问题描述】:我能够找到我的问题的一些答案,但它不像我的字典... 查看详情

c#使用chart绘制实时折线图,波形图叠加

下载:https://download.csdn.net/download/mao0514/21044527用VS自带的Chart图表控件,制作实时动态显示的折线图,和波形图涉及知识点:Chart控件,功能强大,可以绘制柱状图,折线图,波形图,饼状图,大大简化了对图的开发与定制。Chart... 查看详情

散景折线图未绘制完整的熊猫数据框

...为图表当前正在Bokeh中更新,但我无法再在Jupyter笔记本中使用Bokeh中的折线图绘制完整的数据框。使用thisexamplefromthedocs:fromcollectionsimportOrd 查看详情

qml 使用中继器从 Qlist 绘制折线图

】qml使用中继器从Qlist绘制折线图【英文标题】:qmldrawaLinechartfromQlistusingarepeater【发布时间】:2021-10-1106:40:17【问题描述】:我想绘制保存在QList中的传感器数据图。我知道将数据提高到qml级别可以正常工作,因为它可以正确打... 查看详情

如何在 Qt 中绘制和编辑折线图

...用鼠标移动顶点。Qwt可以帮我解决这个问题,还是我应该使用其他东西(例如使用QWidget+QPainter自己绘制)附:可能存在未连接的顶点。【问题讨论】:【参考方案1】:我找到了Qt示例- 查看详情

如何分组数据和绘制折线图

...发布时间】:2017-11-3003:29:38【问题描述】:这是我第一次使用pandas和iPython笔记本,但无法为我的问题找出正确的搜索词。我有一个.xls文件,用于位于3个站点A、B和C的3个构建服务器的编译时间数据。这些构建服务器编译多个项... 查看详情

如何在 Corona SDK 中绘制折线图

...您创建一系列线来绘制图形和内部的线。要创建线条,请使用display.newLine在其中声 查看详情

可视化实验十二:利用python绘制箱线图折线图(代码片段)

实验目的:掌握Python中箱线图、折线图绘图函数的使用及展示图形的意义利用上述绘图函数实现数据可视化实验内容:练习python中箱线图、折线图绘图函数的用法,掌握相关参数的概念根据步骤一绘图函数要求,... 查看详情

android自定义组件系列——canvas绘制折线图(代码片段)

有时候我们在项目中会遇到使用折线图等图形,Android的开源项目中为我们提供了很多插件,但是很多时候我们需要根据具体项目自定义这些图表,这一篇文章我们一起来看看如何在Android中使用Canvas绘制折线图。先看... 查看详情

绘制折线图 - 多条线

】绘制折线图-多条线【英文标题】:Plotlylinechart-multiplelines【发布时间】:2019-10-2721:09:36【问题描述】:我想创建一个包含三条线(男性、女性、未知)的折线图。这是我的数据样本:timestamp;sex;number06:00;male;507:00;male;207:00;unkown;... 查看详情

在 SwiftUI 中绘制折线图

】在SwiftUI中绘制折线图【英文标题】:DrawingalinechartinSwiftUI【发布时间】:2020-07-2012:30:32【问题描述】:我正在尝试在SwiftUI中绘制折线图,​​但无法实现for循环:Pathpathinpath.move(to:CGPoint(x:20,y:20))ForEach(0..<11)indexinpath.addLine(to:... 查看详情