// init customplot
    ui->customPlot->xAxis->setLabel("x");
    ui->customPlot->yAxis->setLabel("y");
 
    ui->customPlot->axisRect()->setupFullAxesBox();//四边安装轴并显示
 
    QFont font;
    font.setPixelSize(25);//文字像素大小
    font.setFamily("微软雅黑");//字体
    ui->customPlot->legend->setFont(font);
    ui->customPlot->legend->setBrush(QColor(100, 100, 100, 0));//设置图例背景颜色,可设置透明
 
    QFont font1;
    font1.setPixelSize(20);//文字像素大小    
    ui->customPlot->xAxis->setTickLabelFont(font1);
    ui->customPlot->yAxis->setTickLabelFont(font1);
 
    ui->customPlot->setInteractions(QCP::iRangeDrag | QCP::iRangeZoom);
    pen.setColor(color);    
    ui->customPlot->graph(ui->customPlot->graphCount()-1)->setPen(pen);
    ui->customPlot->graph()->setScatterStyle(QCPScatterStyle(QCPScatterStyle::ScatterShape::ssCircle,15));
    ui->customPlot->graph(ui->customPlot->graphCount()-1)->setName(name);
    QFont ft;
    ft.setPointSize(22); 
 
    ui->customPlot->xAxis->setLabelFont(ft);
    ui->customPlot->xAxis->setLabel(xaxis);
    //隐藏所有图例和曲线
    for (int i = 0; i < ui->customPlot->legend->elementCount(); ++i) 
    {
        //takeAt(i)函数不会导致图例总数减少,只是让全局数组mElements[row][col]中那个图例位置指针为0,
        //且那个图例未删除,只是未显示
        if(ui->customPlot->legend->elementAt(i))
        {
            ui->customPlot->legend->elementAt(i)->setVisible(false);
            ui->customPlot->legend->takeAt(i);
        }
    }  
    for (int i = 0; i < ui->customPlot->graphCount(); ++i) {
        ui->customPlot->graph(i)->setVisible(false);
    }  
 
    //遍历出哪些图例和曲线需要显示
    cntActualGraph = 0;
    ui->labelNumLineActual->setText(QString::number(cntActualGraph));
    for (int i = 0; i < numGraph; ++i) {
        QCheckBox* cb = this->findChild<QCheckBox *>("checkBox_"+QString::number(i+1));
        if(cb->isChecked())
        {
            ui->customPlot->graph(i)->setVisible(true);
            ui->customPlot->legend->addElement(mapLegend[cb->text()]);
            mapLegend[cb->text()]->setVisible(true);
 
            ui->labelNumLineActual->setText(QString::number(++cntActualGraph));               
        }
    }
    ui->customPlot->legend->simplify(); //上面的take函数拿掉了某个图例,一定需要最后调用一下这个函数,使得无效图例不占用空间,仅仅包裹
    ui->customPlot->replot();

设置图例图标大小

ui->customPlot->legend->setIconSize(0,0);

设置图例文字颜色
ui->customPlot->legend->setTextColor(TextColor);//设置图例文字颜色

设置图例是否可用
ui->customPlot->legend->setVisible(false); //设置图例是否可用

在图例中添加线
ui->customPlot->axisRect()->setupFullAxesBox();

将图例矩形域放到右上角
ui->customPlot->axisRect()->insetLayout()->setInsetAlignment(0,Qt::AlignTop|Qt::AlignRight);

设置图例背景色
ui->customPlot->legend->setBrush(QColor(255,255,255,0));//设置背景色

// 设置图例行优先排列
plot->legend->setFillOrder(QCPLayoutGrid::foColumnsFirst);
// 设置六个图例自动换行
plot->legend->setWrap(6);
// 设置图例可见
plot->legend->setVisible(true);

// 设置图例位置,这里选择显示在QCPAxisRect下方,同理可设置显示在QCustomPlot中任意位置
plot->plotLayout()->addElement(1 , 0, plot->legend);
// 设置显示比例
plot->plotLayout()->setRowStretchFactor(1, 0.001);
// 设置边框隐藏
plot->legend->setBorderPen(Qt::NoPen);

qcustomplot使用的一些常用设置相关推荐

  1. QCustomplot常用设置

    QCustomplot常用设置 QCustomplot常用设置 QCustomplot常用设置 //设置图例图标大小 ui->customPlot->legend->setIconS ...

  2. vs快捷键及常用设置(vs2012版)

    vs快捷键: 1.ctrl+f F是Find的简写,意为查找.在vs工具中按此快捷键,可以查看相关的关键词.比如查找哪些页面引用了某个类等.再配合查找范围(整个解决方案.当前项目.当前文档等),可以快 ...

  3. pandas中set_option的常用设置:显示所有行、显示所有列、控制浮点型精度、每个数据元素的显示字符数、对齐形式等

    pandas中set_option的常用设置:显示所有行.显示所有列.控制浮点型精度.每个数据元素的显示字符数.对齐形式等 #pandas中set_option的常用设置 详细参考pandas API ...

  4. Pycharm快捷键及一些常用设置

    在PyCharm /opt/pycharm-3.4.1/help目录下可以找到ReferenceCard.pdf快捷键英文版说明 PyCharm Default Keymap PyCharm3.0默认 ...

  5. Oracle使用技巧----sqlplus Set常用设置

    Oracle使用技巧----sqlplus Set常用设置 转自:http://blog.sina.com.cn/s/blog_40355af20100puju.html SqlPlus Set常用设 ...

  6. Android Studio 如何导出和导入自己的常用设置,避免重复制造轮子。加快开发速度...

    Android Studio 如何导出和导入自己的常用设置,避免重复制造轮子.加快开发速度 作者:程序员小冰,CSDN博客:http://blog.csdn.net/qq_21376985 在使用 A ...

  7. 第二部分:IDEA 常用设置

    1.无歧义时自动导入 2.注释位置调整 添加之前是这样的效果: 添加之后评论是这个效果 3.显示行号 4.显示方法分割线 5.ctrl+alt+t 自定义代码折叠 6.多行显示tab栏 7.黑色主题 ...

  8. Source Insight 4.0常用设置

    本文以Source Insight 4.00.0086版本为例讲解常用设置. 1.Source Insight简介 Source Insight是一个面向软件开发的代码编辑器和浏览器,它拥有内置的对C ...

  9. Eclipse常用快捷键、常用设置、常见问题等

    1. 常用快捷键 Ctrl+.          将光标移动至当前文件中的下一个报错处 Ctrl+1          显示当前错误修改建议 Ctrl+M              编辑器窗口最大化 ...

最新文章

  1. Spring Cloud Alibaba发布第二个版本,Spring 发来贺电
  2. mysql怎么用_面试官都是这样发问的,连环冲锋炮,看你怎么抵挡(上)
  3. 仿生蛇类机器人 特点_今日项目:功能表面仿生激光强化及其修复再造技术
  4. 【深度学习】——利用pytorch搭建一个完整的深度学习项目(构建模型、加载数据集、参数配置、训练、模型保存、预测)
  5. 【渝粤教育】电大中专学前儿童科学教育1作业 题库
  6. uint8_t / uint16_t / uint32_t /uint64_t 的简单介绍
  7. Kotlin入门(9)函数的基本用法
  8. 【软件测试】简述自顶向下和自底向上两种集成测试方法
  9. 设置只允许在微信里打开,做一个服务赞赏评价系统,提升服务质量,让员工更积极参与工作
  10. 离线打开html一直刷新,还在手动刷新离线网页?这个方法让你坐等网络恢复
  11. 碧桂园建筑机器人造楼,梦照进现实还是“海市蜃楼”?
  12. SubType.prototype.constructor = SubType原因
  13. mt6573 环境配置
  14. ubi ubifs学习笔记
  15. 站内搜索引擎(ASP.NET)
  16. qemu-system-aarch64使用记录
  17. STK12已出,STK 12 新特性介绍
  18. 盘点十大生鲜商城平台,生鲜电商还值不值得做
  19. Blender新手入门试水作品:Low poly版敲击兽
  20. 十、快速入门线性代数的向量和矩阵篇

热门文章

  1. 【生活工作经验 四】互联网社招求职攻略
  2. 2010年9月51CTO壁纸点评活动获奖名单【结束】
  3. 【ABAP】固定资产创建BAPI无法自动写入增强字段处理
  4. 解决selenium + chromedriver模拟登录被淘宝反爬
  5. Python基于Django的高校作业布置批改管理系统
  6. MATLAB标定ZED双目摄像头
  7. 计算机桌面太暗了怎么调亮,笔记本电脑显示器太暗怎么调亮一点?一招教你搞定!...
  8. img的title和alt有什么区别
  9. 央行叫停网络虚拟信用卡及二维码支付
  10. React Native 指定模拟器手机型号 --simulator