ChartDirector 7.0 (ASP/COM/VB Edition)

Horizontal Bar Meter




This example demonstrates the basic steps in creating a horizontal bar meter.

A horizontal bar meter can be created using the following steps:

Source Code Listing

[Web Version (in ASP)] aspdemo\hbarmeter.asp
<%@ language="vbscript" %> <% Set cd = CreateObject("ChartDirector.API") ' The value to display on the meter value = 75.35 ' Create an LinearMeter object of size 260 x 66 pixels with a very light grey (0xeeeeee) background, ' and a rounded 3-pixel thick light grey (0xaaaaaa) border Set m = cd.LinearMeter(260, 66, &Heeeeee, &Haaaaaa) Call m.setRoundedFrame(cd.Transparent) Call m.setThickFrame(3) ' Set the scale region top-left corner at (18, 24), with size of 222 x 20 pixels. The scale labels ' are located on the top (implies horizontal meter) Call m.setMeter(18, 24, 222, 20, cd.Top) ' Set meter scale from 0 - 100, with a tick every 10 units Call m.setScale(0, 100, 10) ' Add a 5-pixel thick smooth color scale to the meter at y = 48 (below the meter scale) smoothColorScale = Array(0, &H0000ff, 25, &H0088ff, 50, &H00ff00, 75, &Hffff00, 100, &Hff0000) Call m.addColorScale(smoothColorScale, 48, 5) ' Add a light blue (0x0088ff) bar from 0 to the data value with glass effect and 4 pixel rounded ' corners Call m.addBar(0, value, &H0088ff, cd.glassEffect(cd.NormalGlare, cd.Top), 4) ' Output the chart Set viewer = cd.WebChartViewer(Request, "chart1") Call viewer.setChart(m, cd.SVG) %> <!DOCTYPE html> <html> <head> <title>Horizontal Bar Meter</title> <!-- Include ChartDirector Javascript Library to support chart interactions --> <script type="text/javascript" src="cdjcv.js"></script> </head> <body style="margin:5px 0px 0px 5px"> <div style="font:bold 18pt verdana;"> Horizontal Bar Meter </div> <hr style="border:solid 1px #000080; background:#000080" /> <div style="font:10pt verdana; margin-bottom:1.5em"> <a href="viewsource.asp?file=<%= Request("SCRIPT_NAME") %>">View Chart Source Code</a> </div> <!-- ****** Here is the chart image ****** --> <%= viewer.renderHTML() %> </body> </html>

[Windows Version (in Visual Basic)] vbdemo\hbarmeter.cls
Public Sub createChart(viewer As Object, chartIndex As Integer) Dim cd As New ChartDirector.API ' The value to display on the meter Dim value As Double value = 75.35 ' Create an LinearMeter object of size 260 x 66 pixels with a very light grey (0xeeeeee) ' background, and a rounded 3-pixel thick light grey (0xaaaaaa) border Dim m As LinearMeter Set m = cd.LinearMeter(260, 66, &Heeeeee, &Haaaaaa) Call m.setRoundedFrame() Call m.setThickFrame(3) ' Set the scale region top-left corner at (18, 24), with size of 222 x 20 pixels. The scale ' labels are located on the top (implies horizontal meter) Call m.setMeter(18, 24, 222, 20, cd.Top) ' Set meter scale from 0 - 100, with a tick every 10 units Call m.setScale(0, 100, 10) ' Add a 5-pixel thick smooth color scale to the meter at y = 48 (below the meter scale) Dim smoothColorScale() smoothColorScale = Array(0, &H0000ff, 25, &H0088ff, 50, &H00ff00, 75, &Hffff00, 100, &Hff0000) Call m.addColorScale(smoothColorScale, 48, 5) ' Add a light blue (0x0088ff) bar from 0 to the data value with glass effect and 4 pixel rounded ' corners Call m.addBar(0, value, &H0088ff, cd.glassEffect(cd.NormalGlare, cd.Top), 4) ' Output the chart Set viewer.Picture = m.makePicture() End Sub