ChartDirector 7.0 (Java Edition)
Pyramid Rotation
Source Code Listing
<%@page import="ChartDirector.*, java.util.*" %>
<%!
// Function to create the demo charts
void createChart(WebChartViewer viewer, int chartIndex)
{
// The data for the pyramid chart
double[] data = {156, 123, 211, 179};
// The semi-transparent colors for the pyramid layers
int[] colors = {0x400000cc, 0x4066aaee, 0x40ffbb00, 0x40ee6622};
// The rotation angle
int angle = chartIndex * 15;
// Create a PyramidChart object of size 200 x 200 pixels, with white (ffffff) background and
// grey (888888) border
PyramidChart c = new PyramidChart(200, 200, 0xffffff, 0x888888);
// Set the pyramid center at (100, 100), and width x height to 60 x 120 pixels
c.setPyramidSize(100, 100, 60, 120);
// Set the elevation to 15 degrees and use the given rotation angle
c.addTitle("Rotation = " + angle, "Arial Italic", 15);
c.setViewAngle(15, angle);
// Set the pyramid data
c.setData(data);
// Set the layer colors to the given colors
c.setColors2(Chart.DataColor, colors);
// Leave 1% gaps between layers
c.setLayerGap(0.01);
// Output the chart
viewer.setChart(c, Chart.SVG);
}
%>
<%
// This example includes 7 charts
WebChartViewer[] viewers = new WebChartViewer[7];
for (int i = 0; i < viewers.length; ++i) {
viewers[i] = new WebChartViewer(request, "chart" + i);
createChart(viewers[i], i);
}
%>
<!DOCTYPE html>
<html>
<head>
<title>Pyramid Rotation</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;">
Pyramid Rotation
</div>
<hr style="border:solid 1px #000080; background:#000080" />
<div style="font:10pt verdana; margin-bottom:1.5em">
<a href="viewsource.jsp?file=<%=request.getServletPath()%>">View Source Code</a>
</div>
<!-- ****** Here are the chart images ****** -->
<%
for (int i = 0; i < viewers.length; ++i) {
out.write(viewers[i].renderHTML(response));
out.write(" ");
}
%>
</body>
</html>