POLARLINE.jsp 2.73 KB
Newer Older
Thitichaipun Wutthisak committed
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85
<%@page import="ChartDirector.*" %>
<%
//The data for the chart
double[] data0 = {90, 25, 40, 55, 68, 44, 79, 85, 50};
double[] angles0 = {15, 60, 110, 180, 230, 260, 260, 310, 340};

double[] data1 = {80, 91, 66, 80, 92, 87};
double[] angles1 = {40, 65, 88, 110, 150, 200};

//Create a PolarChart object of size 460 x 460 pixels
PolarChart c = new PolarChart(460, 460);

//Add a title to the chart at the top left corner using 15pts Arial Bold Italic
//font
c.addTitle2(Chart.TopLeft, "<*underline=2*>Polar Line Chart Demo",
    "arialbi.ttf", 15);

//Set center of plot area at (230, 240) with radius 180 pixels
c.setPlotArea(230, 240, 180);

//Set the grid style to circular grid, with grids below the chart layers
c.setGridStyle(false, false);

//Add a legend box at the top right corner of the chart using 9 pts Arial Bold
//font
c.addLegend(459, 0, true, "arialbd.ttf", 9).setAlignment(Chart.TopRight);

//Set angular axis as 0 - 360, either spoke every 30 units
c.angularAxis().setLinearScale(0, 360, 30);

//Add a blue (0xff) line layer to the chart using (data0, angle0)
PolarLineLayer layer0 = c.addLineLayer(data0, 0xff, "Close Loop Line");
layer0.setAngles(angles0);

//Set the line width to 2 pixels
layer0.setLineWidth(2);

//Use 11 pixel triangle symbols for the data points
layer0.setDataSymbol(Chart.TriangleSymbol, 11);

//Enable data label and set its format
layer0.setDataLabelFormat("({value},{angle})");

//Set the data label text box with light blue (0x9999ff) backgruond color and 1
//pixel 3D border effect
layer0.setDataLabelStyle().setBackground(0x9999ff, Chart.Transparent, 1);

//Add a red (0xff0000) line layer to the chart using (data1, angle1)
PolarLineLayer layer1 = c.addLineLayer(data1, 0xff0000, "Open Loop Line");
layer1.setAngles(angles1);

//Set the line width to 2 pixels
layer1.setLineWidth(2);

//Use 11 pixel diamond symbols for the data points
layer1.setDataSymbol(Chart.DiamondSymbol, 11);

//Set the line to open loop
layer1.setCloseLoop(false);

//Enable data label and set its format
layer1.setDataLabelFormat("({value},{angle})");

//Set the data label text box with light red (0xff9999) backgruond color and 1
//pixel 3D border effect
layer1.setDataLabelStyle().setBackground(0xff9999, Chart.Transparent, 1);

//output the chart
request.getSession().setAttribute("chart1", c.makeChart2(Chart.PNG));
%>
<html>
<body topmargin=0 leftmargin=5 rightmargin=0 marginwidth=5 marginheight=0>
<div style="font-size:18pt; font-family:verdana; font-weight:bold">
    Polar Line Chart
</div>
<hr color="#000080">
<div style="font-size:10pt; font-family:verdana">
    <a href="VIEWSOURCE.jsp?file=<%=request.getServletPath()%>">
        View Chart Source Code
    </a>
</div>
<br>
<img src="chart1.chart?no_cache=<%=Chart.getUniqueId()%>">
</body>
</html>