[QCustomPlot] QCPBar绘制柱状图并同时显示柱状图的值

这篇具有很好参考价值的文章主要介绍了[QCustomPlot] QCPBar绘制柱状图并同时显示柱状图的值。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

前言

博主在使用 qcustomplot 绘制柱状图时,发现网络上的教程。大都忽略了一个重要的点就是。柱状图没有明显显示出当前的值。经过博主寻找后发现在 qcustomplot 论坛中已经有了对应的解决方案。所以记录一下。qcustomplot论坛

代码

void MainWindow::drawBars()
{
    QCPBars *bars = new QCPBars(ui->customplot->xAxis, ui->customplot->yAxis);

    QVector<double> key;
    QVector<double> value;
    for(int i = 0; i < 5; i++)
    {
        //QCPItemText的效果类似于一个label
        QCPItemText *itemText = new QCPItemText(ui->customplot);
        itemText->setClipToAxisRect(false);
        //设置itemText的位置是跟随坐标系的
        itemText->position->setType(QCPItemPosition::ptPlotCoords);
        //设置itemText跟随的坐标系为 ui->customplot->xAxis, ui->customplot->yAxis
        itemText->position->setAxes(ui->customplot->xAxis, ui->customplot->yAxis);
        //设置itemText放置的位置
        itemText->setPositionAlignment(Qt::AlignTop | Qt::AlignHCenter);
        key.append(i + 1);
        value.append((i + 1) * 1000 + 123);
        //设置itemText显示的内容
        itemText->setText(QString::number(value.at(i)));
        //设置itemText显示的位置的坐标
        itemText->position->setCoords(key.at(i), value.at(i));
    }
    bars->addData(key, value);
    QStringList keyList({QStringLiteral("一月份"), QStringLiteral("二月份"), QStringLiteral("三月份"), QStringLiteral("四月份"), QStringLiteral("五月份")});
    QSharedPointer<QCPAxisTickerText> tickerText(new QCPAxisTickerText);
    //每个x轴的数据对应的label
    tickerText->addTicks(key, keyList.toVector());

    //将 ui->customplot->xAxis的坐标轴上的ticker 和 tickerLabel 更换为自定义的 tickerText
    ui->customplot->xAxis->setTicker(tickerText);
    //设置 ui->customplot->xAxis 的范围,以便能够看到全部的柱状图
    ui->customplot->xAxis->setRange(0, key.length() + 1);
    //ui->customplot->yAxis 自适应范围
    ui->customplot->yAxis->rescale();

    //y轴的单位
    ui->customplot->yAxis->setLabel(QStringLiteral("CNY"));
    //重新绘制才能生效
    ui->customplot->replot();
}

效果图

qcustomplot显示值,我的QT,ui,qt,开发语言

思考

如果要做悬浮显示当前柱状图的值,对于 qcustomplot 来说并没有现成的接口。可能就要稍微麻烦一些,博主没有尝试。但是可以参考以下文章QCustomplot绘制柱状图及显示数据。最后有不懂的欢迎各位大佬在评论区交流文章来源地址https://www.toymoban.com/news/detail-739860.html

到了这里,关于[QCustomPlot] QCPBar绘制柱状图并同时显示柱状图的值的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • Qt实用技巧:QCustomPlot做北斗GPS显示绝对位置运动轨迹和相对位置运动轨迹图的时,使图按照输入点顺序连曲线

    若该文为原创文章,转载请注明原文出处 本文章博客地址:https://hpzwl.blog.csdn.net/article/details/136131310 红胖子网络科技博文大全:开发技术集合(包含Qt实用技术、树莓派、三维、OpenCV、OpenGL、ffmpeg、OSG、单片机、软硬结合等等)持续更新中…   使用QCustomPlot绘制多个目标的

    2024年02月20日
    浏览(61)
  • vue中使用echarts实现省市地图绘制,根据数据在地图上显示柱状图信息,增加涟漪特效动画效果

    一、实现效果 使用echarts实现省市地图绘制,你也可以绘制全国地图。 根据数据在地图显示柱状图,根据经纬度实现定位。 根据数据显示数据,涟漪动态效果。 当然你也可以根据你自己的需求,增删效果哦。 二、实现方法 1、安装echarts插件 2、获取省市json数据 https://datav.

    2024年02月03日
    浏览(44)
  • QCustomPlot 绘制卡顿问题

    大数据量导致曲线绘制卡顿问题 这里提供一个思路在跟踪源码中发现底层卡顿在vector的resize() 此处扩容中 所以尽量使用下面的接口 而不是使用addData这个接口,还有setData这个接口

    2024年02月10日
    浏览(30)
  • Qt QCustomPlot 绘制子轴

    抄大神杰作: QCustomplot(五)QCPAxisRect进行子绘图-CSDN博客 文章浏览阅读5.9k次,点赞7次,收藏60次。文中介绍了QCustomPlot 子绘图需要掌握的类,也就是Matlab中的subplot,最后给出了一个完整的例子。_qcpaxisrect https://blog.csdn.net/weixin_39258979/article/details/122008568 需求来源:试验数据

    2024年01月20日
    浏览(35)
  • 【QCustomPlot】绘制 x-y 曲线图

    使用 QCustomPlot 绘图库辅助开发时整理的学习笔记。同系列文章目录可见 《绘图库 QCustomPlot 学习笔记》目录。本篇介绍如何使用 QCustomPlot 绘制 x-y 曲线图,需要 x 轴数据与 y 轴数据都已知,示例中使用的 QCustomPlot 版本为 Version 2.1.1 ,QT 版本为 5.9.2 。 目录 说明 1. 示例工程配

    2024年02月09日
    浏览(50)
  • qt使用QCustomplot绘制cpu和内存使用率图

                QCustomPlot是一个开源的Qt C++图表库,用于可视化数据。该库提供了多种类型的可定制的图表,包括散点图、线图、柱状图和等高线图等。它还支持自定义绘制,可以创建任意形状和大小的元素,并使其与其他元素交互。QCustomPlot易于集成到现有的Qt应用程序中

    2024年02月09日
    浏览(52)
  • [echarts]柱状图的点击事件

    先来一段简洁的写echarts图表的代码: 如图所示,如果柱状图需要有点击事件: 但这只是点击蓝色柱条部分才会触发点击事件的写法 如果柱条没有数据,用上述方法点击时将不会触发,如果无数据点击背景也依旧想触发点击事件,就用下面方法: 另外,再补充一下划过和划出事

    2024年02月13日
    浏览(45)
  • echarts柱状图的样式调整及应用

    一、在项目中引进echarts        echarts官网:快速上手 - Handbook - Apache ECharts,点击左侧导航栏的“入门篇”中的“在项目中引入 Apache ECharts”可在项目中引进echarts 二、查看调整样式的代码       在官网页头中的“文档”下方的“配置项手册”中可查看调整样式的代码 三、以

    2024年02月05日
    浏览(36)
  • echarts实现3d柱状图的两种方式

    看了不少关于3d柱状图的案例,发现做3d柱状图 常用的两种方式就是 自定义图形和象型柱图, 两种实现方式效果如下: 方法1: echarts.graphic.extendShape 自定义图形 echarts自定义图形的详细用法点这里, 官网点这里, 图中第一个3d柱状图我参考的案例在这里, 看了很多 echarts这种3d案例,

    2024年02月01日
    浏览(51)
  • Qt之基于QCustomPlot绘制直方图(Histogram),叠加正态分布曲线

    高斯分布(Gaussian distribution),又名正态分布(Normal distribution),也称\\\"常态分布\\\",也就是说,在正常的状态下,一般的事物,都会符合这样的分布规律。 比如人的身高为一个随机变量,特别高的人比较少,特别矮的也很少,大部分都集中在中等身高。 人的智商也是如此,社会精

    2024年02月06日
    浏览(57)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包