如何在QBarSet中设置条形的颜色?

数学家

我有一个带有单个QBarSet的水平条形图,如下所示: 在此处输入图片说明

我想单独设置QBarSet每个栏的颜色。有什么办法可以做到吗?

我知道我可以使用3个单独的QBarSet而不是一个,并分别设置每个QBarSet的颜色来实现我想要的。但是,我不想使用此策略,因为条形图的标签会出现在图表顶部的图例中(我希望每个条形图的标签都显示在条形图的左侧,例如在快照中我提供了)。

我在这里看到了一个解决方案该解决方案说明了如何在悬停事件上执行此操作,但是我可以找到一种修改该解决方案的方法,以使条形始终保持彩色。

谢谢!

永乐

以下方法在另一种配置中可能会失败,因为它高度依赖于图表上放置的内容,因此,如果您想对实际问题做出解答,则必须提供MRE。

考虑到上述情况,逻辑是通过过滤器获取项目(矩形)并设置颜色:

#include <random>

#include <QApplication>
#include <QtCharts>
QT_CHARTS_USE_NAMESPACE

int main(int argc, char *argv[])
{
    QApplication a(argc, argv);
    QChartView w;

    QBarSet *set0 = new QBarSet("bar1");

    *set0 << 1 << 4 << 3 << 7 << 2 << 5 << 1 << 3 << 3 << 2 << 1 << 6 << 7 << 5;

    QBarSeries *series = new QBarSeries;
    series->append(set0);

    QChart *chart= new QChart;
    w.setChart(chart);
    chart->addSeries(series);

    // filter items
    QList<QGraphicsRectItem *> rect_items;
    for(QGraphicsItem * it : w.items()){
        if(QGraphicsRectItem *rect = qgraphicsitem_cast<QGraphicsRectItem *>(it)){
            if(rect->parentItem() != chart && rect->parentItem()->parentItem() == chart){
                rect_items << rect;
            }
        }
    }

    // change color
    std::random_device dev;
    std::mt19937 rng(dev());
    std::uniform_int_distribution<std::mt19937::result_type> dist255(0, 255);

    for(QGraphicsRectItem * rect : rect_items){
        QColor color(dist255(rng), dist255(rng), dist255(rng));
        rect->setBrush(color);
    }

    w.show();

    return a.exec();
}

在此处输入图片说明

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

如何在条形图中手动设置颜色

来自分类Dev

如何在Android App中更改条形的颜色?

来自分类Dev

如何在R中的表格图中指定条形的颜色

来自分类Dev

如何在Matlab中更改子图的单个条形颜色

来自分类Dev

如何在ngTagsInput中设置标签的颜色?

来自分类Dev

如何在MPAndroidChart中设置颜色?

来自分类Dev

Java:如何在子类中设置颜色?

来自分类Dev

如何在titleForHeaderInSection中设置颜色?-迅速

来自分类Dev

如何在tabSpec文本中设置颜色?

来自分类Dev

如何在titleForHeaderInSection中设置颜色?-迅速

来自分类Dev

如何在 cgmutablepath 中设置形状的颜色?

来自分类Dev

如何在 MPAndroidChart 的 PieChart 中设置颜色

来自分类Dev

如何在 JButton 中设置文本颜色?

来自分类Dev

Seaborn:如何设置条形边框的线宽或颜色?

来自分类Dev

如何在matplotlib中设置与刻度线无关的条形宽度?

来自分类Dev

如何在Xfce中基于墙纸颜色设置背景颜色?

来自分类Dev

如何在Plotly条形图中使用星期几设置颜色图例

来自分类Dev

如何在Highcharts条形图中更改特定的条形颜色?

来自分类Dev

asp.Net MVC如何为图表中的每个条形设置颜色?

来自分类Dev

如何为R中具有多个图层的条形图设置颜色?

来自分类Dev

asp.Net MVC如何为图表中的每个条形设置颜色?

来自分类Dev

如何根据数据帧(pandas)中的值设置条形(matplotlib)的颜色?

来自分类Dev

如何在JTable中的特定行中设置颜色

来自分类Dev

如何在android中的日历中设置日期的颜色

来自分类Dev

如何在PowerShell中的PSReadLine中设置颜色

来自分类Dev

如何在Google Charts API中更改堆积条形图的部分颜色?

来自分类Dev

如何在VBA Powerpoint中仅更改线条形状颜色

来自分类Dev

Google图表-堆积条形图。如何在每个栏中引入不同的颜色

来自分类Dev

如何在ggplotly中更改条形图的悬停背景颜色

Related 相关文章

  1. 1

    如何在条形图中手动设置颜色

  2. 2

    如何在Android App中更改条形的颜色?

  3. 3

    如何在R中的表格图中指定条形的颜色

  4. 4

    如何在Matlab中更改子图的单个条形颜色

  5. 5

    如何在ngTagsInput中设置标签的颜色?

  6. 6

    如何在MPAndroidChart中设置颜色?

  7. 7

    Java:如何在子类中设置颜色?

  8. 8

    如何在titleForHeaderInSection中设置颜色?-迅速

  9. 9

    如何在tabSpec文本中设置颜色?

  10. 10

    如何在titleForHeaderInSection中设置颜色?-迅速

  11. 11

    如何在 cgmutablepath 中设置形状的颜色?

  12. 12

    如何在 MPAndroidChart 的 PieChart 中设置颜色

  13. 13

    如何在 JButton 中设置文本颜色?

  14. 14

    Seaborn:如何设置条形边框的线宽或颜色?

  15. 15

    如何在matplotlib中设置与刻度线无关的条形宽度?

  16. 16

    如何在Xfce中基于墙纸颜色设置背景颜色?

  17. 17

    如何在Plotly条形图中使用星期几设置颜色图例

  18. 18

    如何在Highcharts条形图中更改特定的条形颜色?

  19. 19

    asp.Net MVC如何为图表中的每个条形设置颜色?

  20. 20

    如何为R中具有多个图层的条形图设置颜色?

  21. 21

    asp.Net MVC如何为图表中的每个条形设置颜色?

  22. 22

    如何根据数据帧(pandas)中的值设置条形(matplotlib)的颜色?

  23. 23

    如何在JTable中的特定行中设置颜色

  24. 24

    如何在android中的日历中设置日期的颜色

  25. 25

    如何在PowerShell中的PSReadLine中设置颜色

  26. 26

    如何在Google Charts API中更改堆积条形图的部分颜色?

  27. 27

    如何在VBA Powerpoint中仅更改线条形状颜色

  28. 28

    Google图表-堆积条形图。如何在每个栏中引入不同的颜色

  29. 29

    如何在ggplotly中更改条形图的悬停背景颜色

热门标签

归档