3

我正在尝试在 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 但我不应该改变什么来解决这个问题。如果有人可以提供帮助,请告诉我。

提前致谢!

4

0 回答 0