Contents > Developing ColdFusion MX Applications > Charting and Graphing Data > Charting data > Writing a chart to a variable PreviousNext

Writing a chart to a variable

In some cases, your application might have charts that are static or charts that, because of the nature of the data input, take a long time to render. In this scenario, you can create a chart and write it to a variable.

Once written to a variable, other ColdFusion pages can access the variable to display the chart, or you can write the variable to disk to save the chart to a file. This lets you create or update charts only as needed, rather than every time someone requests a page containing a chart.

You use the name attribute of the cfchart tag to write a chart to a variable. If you specify the name attribute, the chart is not rendered in the browser but is written to the variable.

You can save the chart as a Flash movie (.swf file), or as a JPG or PNG image file. If you save the image as a Flash movie, you can pass the variable back to a Flash client using ColdFusion Flash Remoting. For more information, see Using the Flash Remoting Service.

Note: If you write the chart to a JPG or PNG file, mouseover tips and URLs embedded in the chart for data drill-down will not work when you redisplay the image from the file. However, if you save the image a Flash movie, both tips and drill-down URLs will work. For more information on data drill-down, see Linking charts to URLs.

To write a chart to a variable and a file:

  1. Create a new ColdFusion page with the following content:
    <cfchart
       name="myChart"
       format="jpg"
       >
    
       <cfchartseries type="pie">
          <cfchartdata item="New Vehicle Sales" value=500000>
          <cfchartdata item="Used Vehicle Sales" value=250000>
          <cfchartdata item="Leasing" value=300000>
          <cfchartdata item="Service" value=400000>
       </cfchartseries>
    
    </cfchart>
    
    <cffile 
       action="WRITE" 
       charset="ISO-8859-1"
       file="c:\inetpub\wwwroot\charts\vehicle.jpg" 
       output="#myChart#"> 
    <img src="/charts/vehicle.jpg" 
       height=240 
    
   width=320>
  1. Save the page as chartToFile.cfm in myapps under the web root directory.
  2. Return to your browser and enter the following URL to view chartToFile.cfm:

    http://127.0.0.1/myapps/chartToFile.cfm

    The chart is saved to disk as c:\inetpub\wwwroot\charts\vehicle.jpg

Reviewing the code

The following table describes the highlighted code and its function:

Code

Description

<cfchart
   name="myChart"
   format="jpg">

Define a chart written to the variable myChart using the JPG format.

<cffile 
   action="WRITE"
   charset="ISO-8859-1"
   file=
"c:\inetpub\wwwroot\charts\vehicle.jpg" output="#myChart#">

Use cffile to write the chart to a file.

You must specify a charset of ISO-8859-1 when writing binary chart data to a file.

<img
   src="/chartsvehicle.jpg"
   height=240 
   width=320>

Use the HTML img tag to display the chart.


Contents > Developing ColdFusion MX Applications > Charting and Graphing Data > Charting data > Writing a chart to a variable PreviousNext

ColdFusion 9 | ColdFusion 8 | ColdFusion MX 7 | ColdFusion MX 6.1 | ColdFusion MX | Forums | Developer Center | Bug Reporting

Version 6.1

Comments are no longer accepted for ColdFusion MX 6.1. ColdFusion 8 is the current version.