Used with the cfchart and cfchartseries tags. This tag defines chart data points. Its data is submitted to the cfchartseries tag.
Data output tags, Extensibility tags
<cfchartdata item = "text
" value = "number
">
cfchart, cfchartseries; "Creating Charts and Graphs" in the ColdFusion Developer's Guide
ColdFusion MX: Added this tag.
Attribute |
Req/Opt |
Default |
Description |
---|---|---|---|
item |
Required |
|
Data point name; string. |
value |
Required |
|
Data point value; number or expression. |
<!--- The following example analyzes the salary data in the cfdocexamples database and generates a bar chart showing average salary by department. The body of the cfchartseries tag loops over a cfchartdata tag to include data available from the query. ---> <!--- Get the raw data from the database. ---> <cfquery name="GetSalaries" datasource="cfdocexamples"> SELECT Departmt.Dept_Name, Employee.Dept_ID, Employee.Salary FROM Departmt, Employee WHERE Departmt.Dept_ID = Employee.Dept_ID </cfquery> <!--- Use a query of queries to generate a new query with ---> <!--- statistical data for each department. ---> <!--- AVG and SUM calculate statistics. ---> <!--- GROUP BY generates results for each department. ---> <cfquery dbtype = "query" name = "DataTable"> SELECT Dept_Name, AVG(Salary) AS avgSal, SUM(Salary) AS sumSal FROM GetSalaries GROUP BY Dept_Name </cfquery> <!--- Reformat the generated numbers to show only thousands. ---> <cfloop index = "i" from = "1" to = "#DataTable.RecordCount#"> <cfset DataTable.sumSal[i] = Round(DataTable.sumSal[i]/1000)*1000> <cfset DataTable.avgSal[i] = Round(DataTable.avgSal[i]/1000)*1000> </cfloop> <h1>Employee Salary Analysis</h1> <!--- Bar graph, from Query of Queries. ---> <cfchart format="flash" xaxistitle="Department" yaxistitle="Salary Average"> <cfchartseries type="bar" itemcolumn="Dept_Name" valuecolumn="avgSal"> <cfloop query="DataTable"> <cfchartdata item="#DataTable.Dept_Name#" value="#DataTable.avgSal#"> </cfloop> </cfchartseries> </cfchart>