我正在尝试在 CF11 中修复我的 cfchart,使其看起来与之前的 CF9 相似。我转换了我的 .xml 文件,而是使用 JSON 来设置元素的样式。我无法解决的问题是cfchartseries。我在图表系列中传递的数据看起来不错,在测试图表之前,我尝试在屏幕上输出所有内容。在 CF9 中,我的时间记录显示在屏幕上,从第一个值一直到最后一个值。这是我在 CF9 中的图表的屏幕截图:
正如您在上面的图片中看到的那样,我的所有时间段都按从最低到最高的顺序显示在屏幕上。我的 2015 年记录也显示为蓝色条,2016 年为粉红色。现在,我将向您展示我的图表,其代码与 CF11 中的代码完全相同:
您可以看到我在 CF11 中的图表以当前年份 2015 和不应出现在第一个位置 1415 的时间段的蓝色条开始。此外,我的其他时间段也未显示在屏幕上。我已经非常努力地完成了这项工作,但仍然没有找到任何解决方案。我想知道是否有人可以帮助解决这个问题。下面是我的代码,我将向您展示 CF9 和 CF11 的代码。
CF9中的图表代码:
<cfchart format="#ffPrint#" xaxistitle="#desc#" yaxistitle="#yTitle#" style="ChartStyle.xml"
chartheight="700" chartwidth="#graphWidth#" title="#title#" showlegend="#theLegend#" >
<cfchartseries type="bar" itemcolumn="Spacer" valuecolumn="" seriescolor="white" >
<cfoutput>
<cfloop list="#dataList#" index="i">
<cfchartdata item="#i#" value="0">
</cfloop>
</cfoutput>
</cfchartseries>
<cfoutput query="getRecords" group="theYear">
<cfchartseries type="bar" itemcolumn="#theYear#" valuecolumn="theCount" seriescolor="#listGetAt(theColors,colorIndex)#" >
<cfset colorIndex++>
<cfoutput>
<cfchartdata item="#Description#" value="#theCount#">
</cfoutput>
</cfchartseries>
</cfoutput>
</cfchart>
我在 CF11 中的图表代码:
<cfchart format="html" xaxistitle="#desc#" yaxistitle="#yTitle#" style="#cStyle#"
chartheight="700" chartwidth="#graphWidth#" title="#newTitle2#" showlegend="#theLegend#">
<cfoutput query="getRecords" group="theYear">
<cfchartseries type="bar" itemcolumn="#theYear#" valuecolumn="theCount" seriescolor="#listGetAt(theColors,colorIndex)#" serieslabel="#theYear#">
<cfset colorIndex++>
<cfoutput>
<cfchartdata item="#Description#" value="#theCount#">
</cfoutput>
</cfchartseries>
</cfoutput>
</cfchart>
为了获得 CF11 中的任何记录,我必须删除我的第一个 CFCHARTSERIES,但如果我结合了 2015 年和 2016 年的记录,我的图表不会在屏幕上显示值。我认为这个问题出在 CFCHARTSERIES 但我不应该改变什么来解决这个问题。如果有人可以提供帮助,请告诉我。
提前致谢!