【问题标题】:How set color for bar dependent of value PrimeFaces BarChart如何为取决于值 PrimeFaces BarChart 的条设置颜色
【发布时间】:2016-11-28 09:53:56
【问题描述】:

我在 Google 中找不到它,所以我在这里问。如何设置取决于 PrimeFaces BarChart 值的条形颜色。例如,如果我的值小于50%,则条为红色。也许有人有类似的问题,可以给我一个解决方案

【问题讨论】:

  • 您也可以通过script设置颜色。只需添加model.setExtender("chartExtender");。并创建js函数function chartExtender() {seriesColors:[]// multiple color value from bean method}

标签: javascript jsf primefaces jqplot


【解决方案1】:

我前段时间使用过 primefaces,据我记忆,我的情况与你的情况相似。

您可以做的是动态设置颜色,例如在 bean 中,您可以拥有具有属性 setSeriesColors(String seriesColors) 的对象 BarChartModel。不知道您的示例中的“价值”是什么,但任何东西都有效,这与我所解释的相似。

在 bean 中,您将拥有 getBarColor(value) 函数,您可以根据值决定返回什么颜色字符串。这样您就可以实现您想要的任何逻辑以及您想要多少种颜色,例如:低于 25% - 红色,25-75% - 黄色,超过 75% - 绿色。

public String getBarColor(int value){
    String color="#006400" //default color

    if (value < 25) {
        color="#8B0000";
    } else if (value >= 25 && value <= 75) {
        color="#228B22";
    } else {
        color="#FFD700";
    }

    return color;
}

希望对您有所帮助。我认为您可以根据自己的情况进行调整。

【讨论】:

  • PrimeFaces 图表由画布元素组成,您不能使用 style 属性设置它们的样式。
  • @JasperdeVries 所以这不可能改变这个颜色?
  • 至少不使用这个答案。您需要创建一个extender 来自定义您的图表。我自己从未使用过它。我更喜欢使用谷歌图表。
  • @JasperdeVries 我知道extender,但我找不到与我的问题相关的示例或类似内容。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2021-06-25
  • 2017-08-10
  • 2021-05-01
  • 1970-01-01
相关资源
最近更新 更多