根据CF图表中的数据设置条形颜色

时间:2014-07-21 04:00:18

标签: coldfusion cfchart

我在CF11中创建一个条形图。根据数据,可以为CFchart系列中的不同条形图提供不同的颜色。

<cfchartseries serieslabel="Rent" type="bar" colorlist="barcolr_list">
        <cfloop index="counter" from=1 to="#ArrayLen(PropName_arry)-1#" step="1">               
        <cfchartdata item="#PropName_arry[counter]#" value="#Grossrent_arry[counter]#" >        
    </cfloop>
</cfchartseries>

我在docs中读到,colorlist属性可用于pie,pyramid..etc图。 如何根据粗略值

为酒吧设置不同的颜色

即,如果大概&gt; 800条形颜色应为红色 否则它应该是蓝色

此代码适用于CF7。但不适用于CF11

1 个答案:

答案 0 :(得分:0)

ColorList仅适用于图表类型饼图,金字塔,面积,水平条,圆锥,圆柱或阶梯。 cfchartseries

您可以通过2种不同方式为每列创建特定颜色。通过规则或样式列表。

您可以创建添加到plot属性的规则。指定适用于该规则的颜色。下面的示例显示了x轴值为true时的规则。

<cfset plot= {"rules": [
    {"rule":"'%k'=='2007'",
     "background-color":"purple"},
    {"rule":"'%k'=='2008'",
     "background-color":"pink"},
    {"rule":"'%k'=='2009'",
     "background-color":"green"}]}
    >

或者您可以使用plot中的styles属性为图表创建样式列表。

<cfset plot = {"styles":[
{
"background-color":"##e95d22"
},
{
"background-color":"##017890"
},
{
"background-color":"##da534d"
},
{
"background-color":"##4a266d"
},
{
"background-color":"##f4913c"
}]}>

在图表元素中包含绘图变量,如下所示。

<cfchart format="png" chartheight="180" chartwidth="233" showlegend="false" style="test.js" plot="#plot#">
<cfchartseries type="bar">
    <cfchartdata item="2005" value="1000"/>
    <cfchartdata item="2006" value="3000"/>
    <cfchartdata item="2007" value="1000"/>
    <cfchartdata item="2008" value="4000"/>
    <cfchartdata item="2009" value="2000"/>
</cfchartseries>

在这里帮助我的例子是我的test.js

{
"graphset":[
    {
    "border-width":1, 
    "background-color":"transparent",
    "plotarea":{"margin":"dynamic"}
}]
}

这两种技术都可以直接通过test.js文件包含,但为了使这些颜色动态化,可以更容易地通过plot属性输入它们。