ChartDirector 6.0 (ASP/COM/VB Edition)

Simple Bar Chart (2)




This example extends the Simple Bar Chart (1) example to demonstrates various methods to control the chart appearance and to add titles.

Source Code Listing

[Web Version (in ASP)] aspdemo\simplebar2.asp
<%@ language="vbscript" %>
<%
Set cd = CreateObject("ChartDirector.API")

' The data for the bar chart
data = Array(85, 156, 179, 211, 123, 189, 166)

' The labels for the bar chart
labels = Array("Mon", "Tue", "Wed", "Thu", "Fri", "Sat", "Sun")

' Create a XYChart object of size 600 x 400 pixels
Set c = cd.XYChart(600, 400)

' Add a title box using grey (0x555555) 24pt Arial Bold font
Call c.addTitle("    Bar Chart Demonstration", "arialbd.ttf", 24, &H555555)

' Set the plotarea at (70, 60) and of size 500 x 300 pixels, with transparent background and border
' and light grey (0xcccccc) horizontal grid lines
Call c.setPlotArea(70, 60, 500, 300, cd.Transparent, -1, cd.Transparent, &Hcccccc)

' Set the x and y axis stems to transparent and the label font to 12pt Arial
Call c.xAxis().setColors(cd.Transparent)
Call c.yAxis().setColors(cd.Transparent)
Call c.xAxis().setLabelStyle("arial.ttf", 12)
Call c.yAxis().setLabelStyle("arial.ttf", 12)

' Add a blue (0x6699bb) bar chart layer with transparent border using the given data
Call c.addBarLayer(data, &H6699bb).setBorderColor(cd.Transparent)

' Set the labels on the x axis.
Call c.xAxis().setLabels(labels)

' For the automatic y-axis labels, set the minimum spacing to 40 pixels.
Call c.yAxis().setTickDensity(40)

' Add a title to the y axis using dark grey (0x555555) 14pt Arial Bold font
Call c.yAxis().setTitle("Y-Axis Title Placeholder", "arialbd.ttf", 14, &H555555)

' Output the chart
Response.ContentType = "image/png"
Response.BinaryWrite c.makeChart2(cd.PNG)
Response.End
%>

[Windows Version (in Visual Basic)] vbdemo\simplebar2.cls
Public Sub createChart(viewer As Object, chartIndex As Integer)

    Dim cd As New ChartDirector.API

    ' The data for the bar chart
    Dim data()
    data = Array(85, 156, 179, 211, 123, 189, 166)

    ' The labels for the bar chart
    Dim labels()
    labels = Array("Mon", "Tue", "Wed", "Thu", "Fri", "Sat", "Sun")

    ' Create a XYChart object of size 600 x 400 pixels
    Dim c As XYChart
    Set c = cd.XYChart(600, 400)

    ' Add a title box using grey (0x555555) 24pt Arial Bold font
    Call c.addTitle("    Bar Chart Demonstration", "arialbd.ttf", 24, &H555555)

    ' Set the plotarea at (70, 60) and of size 500 x 300 pixels, with transparent background and
    ' border and light grey (0xcccccc) horizontal grid lines
    Call c.setPlotArea(70, 60, 500, 300, cd.Transparent, -1, cd.Transparent, &Hcccccc)

    ' Set the x and y axis stems to transparent and the label font to 12pt Arial
    Call c.xAxis().setColors(cd.Transparent)
    Call c.yAxis().setColors(cd.Transparent)
    Call c.xAxis().setLabelStyle("arial.ttf", 12)
    Call c.yAxis().setLabelStyle("arial.ttf", 12)

    ' Add a blue (0x6699bb) bar chart layer with transparent border using the given data
    Call c.addBarLayer(data, &H6699bb).setBorderColor(cd.Transparent)

    ' Set the labels on the x axis.
    Call c.xAxis().setLabels(labels)

    ' For the automatic y-axis labels, set the minimum spacing to 40 pixels.
    Call c.yAxis().setTickDensity(40)

    ' Add a title to the y axis using dark grey (0x555555) 14pt Arial Bold font
    Call c.yAxis().setTitle("Y-Axis Title Placeholder", "arialbd.ttf", 14, &H555555)

    ' Output the chart
    Set viewer.Picture = c.makePicture()

    'include tool tip for the chart
    viewer.ImageMap = c.getHTMLImageMap("clickable", "", "title='{xLabel}: {value} Tons'")

End Sub