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

制作公司网站用什么软件深圳那家做APP网站的最好

制作公司网站用什么软件,深圳那家做APP网站的最好,淘宝电脑版网页,网页素材html一、QCPBars 概述 QCPBars 是 QCustomPlot 中用于绘制柱状图/条形图的类,支持单组或多组柱状图显示,可自定义宽度、颜色和间距等属性。 二、主要属性 属性类型描述widthdouble柱子的宽度(坐标轴单位)widthTypeWidthType宽度计算…

一、QCPBars 概述

QCPBars 是 QCustomPlot 中用于绘制柱状图/条形图的类,支持单组或多组柱状图显示,可自定义宽度、颜色和间距等属性。

二、主要属性

属性类型描述
widthdouble柱子的宽度(坐标轴单位)
widthTypeWidthType宽度计算方式(坐标单位或像素单位)
barsGroupQCPBarsGroup*所属的柱状图分组
penQPen柱子边框的画笔属性
brushQBrush柱子填充的画刷属性
nameQString柱状图名称(显示在图例中)
visiblebool是否可见
selectablebool是否可选择
selectedbool当前是否被选中

三、常用方法

1. 数据相关方法

方法参数返回值描述
setDataconst QVector<double>& keys, const QVector<double>& valuesvoid设置柱状图数据
setDataQSharedPointer<QCPBarsDataContainer> datavoid设置数据容器
addDataconst QVector<double>& keys, const QVector<double>& valuesvoid追加数据
addDatadouble key, double valuevoid添加单个柱子
dataCount-int返回柱子数量
data-QSharedPointer<QCPBarsDataContainer>获取数据容器

2. 样式设置方法

方法参数返回值描述
setWidthdouble widthvoid设置柱子宽度
setWidthTypeWidthType widthTypevoid设置宽度计算方式
setPenconst QPen &penvoid设置边框画笔
setBrushconst QBrush &brushvoid设置填充画刷
setSelectedPenconst QPen &penvoid设置选中状态边框画笔
setSelectedBrushconst QBrush &brushvoid设置选中状态填充画刷
setBarsGroupQCPBarsGroup *barsGroupvoid设置柱状图分组

3. 交互相关方法

方法参数返回值描述
setSelectableQCP::SelectionType selectablevoid设置可选择类型
setSelectionQCPDataSelection selectionvoid设置选中柱子
selected-QCPDataSelection获取选中柱子
selectTestconst QPointF &pos, bool onlySelectable, QVariant *detailsdouble测试点是否选中柱子

四、信号列表

信号参数描述
selectionChangedbool selected选中状态改变时触发
selectableChangedQCP::SelectionType selectable可选择状态改变时触发

五、枚举类型

1. WidthType 宽度类型

描述
wtAbsolute绝对宽度(坐标轴单位)
wtAxisRectRatio相对于轴矩形宽度的比例
wtPlotCoords使用绘图坐标计算宽度

六、基础使用示例

cpp

// 创建柱状图
QCPBars *bars = new QCPBars(customPlot->xAxis, customPlot->yAxis);// 设置数据
QVector<double> x(5), y(5);
for (int i=0; i<5; ++i) {x[i] = i+1;  // 1, 2, 3, 4, 5y[i] = QRandomGenerator::global()->bounded(1, 10); // 随机值1-10
}
bars->setData(x, y);// 设置样式
bars->setName("月度销售额");
bars->setWidth(0.5); // 柱子宽度
bars->setPen(QPen(Qt::darkBlue));
bars->setBrush(QColor(100, 150, 250));// 设置坐标轴
customPlot->xAxis->setRange(0, 6);
customPlot->yAxis->setRange(0, 10);// 刷新显示
customPlot->replot();

七、高级功能示例

1. 多组柱状图

cpp

// 创建第一组柱状图
QCPBars *bars1 = new QCPBars(customPlot->xAxis, customPlot->yAxis);
bars1->setData({1,2,3,4}, {3,5,2,6});
bars1->setWidth(0.3);
bars1->setBrush(QColor(100, 150, 250));
bars1->setName("第一季度");// 创建第二组柱状图
QCPBars *bars2 = new QCPBars(customPlot->xAxis, customPlot->yAxis);
bars2->setData({1,2,3,4}, {4,3,6,2});
bars2->setWidth(0.3);
bars2->setBrush(QColor(250, 150, 100));
bars2->setName("第二季度");// 创建柱状图分组并设置间距
QCPBarsGroup *group = new QCPBarsGroup(customPlot);
group->setSpacingType(QCPBarsGroup::stAbsolute);
group->setSpacing(0.1); // 柱子间距
group->append(bars1);
group->append(bars2);

2. 堆叠柱状图

cpp

// 创建基础柱状图
QCPBars *baseBars = new QCPBars(customPlot->xAxis, customPlot->yAxis);
baseBars->setData({1,2,3,4}, {3,2,4,1});
baseBars->setBrush(QColor(100, 150, 250));// 创建堆叠在上方的柱状图
QCPBars *stackedBars = new QCPBars(customPlot->xAxis, customPlot->yAxis);
stackedBars->setData({1,2,3,4}, {2,3,1,4});
stackedBars->setBrush(QColor(250, 150, 100));
stackedBars->moveAbove(baseBars); // 关键:设置堆叠顺序

3. 自定义柱子选择样式

cpp

bars->setSelectable(QCP::stSingleData); // 允许选择单个柱子
bars->setSelectedPen(QPen(Qt::red, 2));
bars->setSelectedBrush(QBrush(QColor(255, 100, 100, 150)));// 连接选择变化信号
connect(customPlot, &QCustomPlot::selectionChangedByUser, [=](){if (bars->selected()) {QCPDataSelection selection = bars->selection();if (selection.dataRangeCount() > 0) {int index = selection.dataRange().begin();qDebug() << "选中了第" << index+1 << "个柱子";}}
});

八、性能优化技巧

  1. 大数据集处理

    cpp

    bars->setAntialiased(false); // 关闭抗锯齿提高性能
  2. 自定义绘制

    cpp

    // 继承QCPBars重写draw方法实现自定义绘制
    class CustomBars : public QCPBars {
    protected:virtual void draw(QCPPainter *painter) override {// 自定义绘制逻辑}
    };
  3. 使用OpenGL加速

    cpp

    customPlot->setOpenGl(true);

QCPBars 提供了丰富的自定义选项,可以创建各种复杂的柱状图可视化效果,包括分组柱状图、堆叠柱状图、百分比柱状图等。


文章转载自:

http://YXXmNv8r.mmjyk.cn
http://nSjld4Sn.mmjyk.cn
http://aIfMQntb.mmjyk.cn
http://GHqv382e.mmjyk.cn
http://dCdcVcmA.mmjyk.cn
http://cBCq1xpb.mmjyk.cn
http://8YxEwm8n.mmjyk.cn
http://NnNZxMFq.mmjyk.cn
http://HwlJMcE0.mmjyk.cn
http://FDTfzkMw.mmjyk.cn
http://xroZpw1u.mmjyk.cn
http://wMOQwWqg.mmjyk.cn
http://FwY2PzTT.mmjyk.cn
http://AP8NZCmb.mmjyk.cn
http://68SOgNN6.mmjyk.cn
http://EbFeUN8D.mmjyk.cn
http://irfPfh2w.mmjyk.cn
http://yDveqf5t.mmjyk.cn
http://iopssDRh.mmjyk.cn
http://5FS6r1uC.mmjyk.cn
http://F36TtSDv.mmjyk.cn
http://ITnRyAsq.mmjyk.cn
http://2hMAhxAn.mmjyk.cn
http://5uHJqJHF.mmjyk.cn
http://Krefaz7V.mmjyk.cn
http://mxBD44it.mmjyk.cn
http://kaSN2fsF.mmjyk.cn
http://e1eiF30P.mmjyk.cn
http://tVqY7ipH.mmjyk.cn
http://05yhZtyr.mmjyk.cn
http://www.dtcms.com/wzjs/627758.html

相关文章:

  • 做ppt网站在线阅读小说网站开发
  • 网站上切换语言是怎么做的军事新闻头条2023
  • 网站建设到上线步骤做海报找素材的网站
  • 高品质网站开发网站开发企业培训报名
  • 网站是意识形态建设福田专门做网站推广公司
  • 企业网站的建设与维护智效云seo
  • 外贸做的社交网站石碣东莞网站建设
  • 看案例网站馆陶网站建设价格
  • 中国电信 网站备案北京市住房和城乡建设局官网
  • 网站 维护方案wordpress cx udy
  • 邱县seo整站排名国内免费自建网站
  • 做淘宝客网站哪个好用哪里找做网站的客户
  • 网站直接做标准曲线凤凰军事新闻
  • 黑龙江高端网站建设什么网站都可以进入的浏览器
  • 微信公众号怎么做链接网站网络广告投放平台
  • 玉树网站建设万网做网站
  • wordpress动态页面天津百度快速排名优化
  • 鲜花店的网站建设企业邮箱怎么更改用户名
  • 团购网站营销方案芜湖网站建设电话
  • 做网站不推广网站建设学什么好
  • 网站建设前景分析天津移动网站设计
  • wordpress 添加证书整站seo排名要多少钱
  • 天津优化网站扬州新闻头条最新消息
  • 网站的结构设计网站建设的经验
  • 西安网站网站建设微信微网站是什么案例
  • wordpress子站共享用户大型网站开发框架有哪些
  • 做加盟的网站建设vi设计公司排行
  • 在线服装设计网站如何选择网站建设平台
  • 工业设计的网站荣耀手机官方网站
  • 做微网站哪家好商业策划书范文6篇