//Main code for creating chart. //Note: the argument chartIndex is unused because this demo only has 1 chart. public void createChart(WinChartViewer viewer, int chartIndex) { // The data for the chart double[] data0 = { 32, 39, 23, 28, 41, 38, 26, 35, 29 }; double[] data1 = { 50, 55, 47, 34, 47, 53, 38, 40, 51 }; // The labels for the chart string[] labels = { "0", "1", "2", "3", "4", "5", "6", "7", "8" }; // Create a XYChart object of size 600 x 300 pixels, with a pale red (ffdddd) // background, black border, 1 pixel 3D border effect and rounded corners. XYChart c = new XYChart(600, 300, 0xffdddd, 0x000000, 1); c.setRoundedFrame(); // Set the plotarea at (55, 58) and of size 520 x 195 pixels, with white (ffffff) // background. Set horizontal and vertical grid lines to grey (cccccc). c.setPlotArea(55, 58, 520, 195, 0xffffff, -1, -1, 0xcccccc, 0xcccccc); // Add a legend box at (55, 32) (top of the chart) with horizontal layout. Use 9pt Arial // Bold font. Set the background and border color to Transparent. c.addLegend(55, 32, false, "Arial Bold", 9).setBackground(Chart.Transparent); // Add a title box to the chart using 15pt Times Bold Italic font. The title is in CDML // and includes embedded images for highlight. The text is white (ffffff) on a dark red // (880000) background, with soft lighting effect from the right side. c.addTitle( "<*block,valign=absmiddle*><*img=@/images/star.png*><*img=@/images/star.png*> " + "Performance Enhancer <*img=@/images/star.png*><*img=@/images/star.png*><*/*>", "Times New Roman Bold Italic", 15, 0xffffff).setBackground(0x880000, -1, Chart.softLighting(Chart.Right)); // Add a title to the y axis c.yAxis().setTitle("Energy Concentration (KJ per liter)"); // Set the labels on the x axis c.xAxis().setLabels(labels); // Add a title to the x axis using CMDL c.xAxis().setTitle( "<*block,valign=absmiddle*><*img=@/images/clock.png*> Elapsed Time (hour)<*/*>"); // Set the axes width to 2 pixels c.xAxis().setWidth(2); c.yAxis().setWidth(2); // Add a spline layer to the chart SplineLayer layer = c.addSplineLayer(); // Set the default line width to 2 pixels layer.setLineWidth(2); // Add a data set to the spline layer, using blue (0000c0) as the line color, with // yellow (ffff00) circle symbols. layer.addDataSet(data1, 0x0000c0, "Target Group").setDataSymbol(Chart.CircleSymbol, 9, 0xffff00); // Add a data set to the spline layer, using brown (982810) as the line color, with pink // (f040f0) diamond symbols. layer.addDataSet(data0, 0x982810, "Control Group").setDataSymbol(Chart.DiamondSymbol, 11, 0xf040f0); // Add a custom CDML text at the bottom right of the plot area as the logo c.addText(575, 250, "<*block,valign=absmiddle*><*img=@/images/small_molecule.png*> <*block*>" + "<*font=Times New Roman Bold Italic,size=10,color=804040*>Molecular\nEngineering" + "<*/*>").setAlignment(Chart.BottomRight); // Output the chart viewer.Chart = c; //include tool tip for the chart viewer.ImageMap = c.getHTMLImageMap("clickable", "", "title='{dataSetName} at t = {xLabel} hour: {value} KJ/liter'"); }
public void createChartCenter(WinChartViewer viewer, string img) { // The data for the chart //double[] data0; //double[] data1; //double[] data2; //double[] data3; //string[] labels; //int idate; ////double[] data0 = { 185, 176, 135, 144,99, 120, 175, 128, 175, 142, 172, 120, 175, 123, 120, 185, 145, 185, 152, 142, 156, 156, 175, 185, 175, 148, 142 }; ////double[] data1 = { 145, 153, 123, 175, 120, 105, 142, 147, 145, 184, 124, 132, 102, 125, 165, 156, 125, 156, 125, 143, 142, 148, 129, 145, 169, 136, 187 }; ////double[] data2 = { 135, 120, 145, 126, 100, 145, 120, 120, 156, 129, 168, 185, 165, 135, 158, 125, 126, 125, 163, 165, 132, 143, 138, 136, 185, 159, 144 }; ////double[] data3 = { 150, 110, 187, 173, 85, 100, 135, 156, 155, 120, 127, 122, 125, 145, 134, 185, 132, 185, 128, 123, 185, 129, 136, 162, 125, 189, 165 }; //if (_dt_grid != null && _dt_grid.Rows.Count > 0) //{ // idate = _dt_grid.Rows.Count; // data0 = new double[idate]; // data1 = new double[idate]; // data2 = new double[idate]; // data3 = new double[idate]; // labels = new string[idate]; // for (int i = 0; i < idate - 1; i++) // { // data0[i] = Convert.ToDouble(_dt_grid.Rows[i]["F1"].ToString()); // data1[i] = Convert.ToDouble(_dt_grid.Rows[i]["F2"].ToString()); // data2[i] = Convert.ToDouble(_dt_grid.Rows[i]["F3"].ToString()); // data3[i] = Convert.ToDouble(_dt_grid.Rows[i]["F4"].ToString()); // labels[i] = _dt_grid.Rows[i]["DD"].ToString(); // } //} //else return; // The labels for the chart //string[] labels = { "0", "1", "2", "3", "4", "5", "6", "7", "8" // }; // Create a XYChart object of size 600 x 300 pixels, with a pale red // (ffdddd) background, black border, 1 pixel 3D border effect and // rounded corners. XYChart c = new XYChart(viewer.Width, viewer.Height); c.setBorder(10); // c.setRoundedFrame(); // Set the plotarea at (55, 58) and of size 520 x 195 pixels, with white // (ffffff) background. Set horizontal and vertical grid lines to grey // (cccccc). c.setPlotArea(55, 58, c.getWidth() - 110, c.getHeight() - 150, 0xf4f4f4, -1, Chart.Transparent, c.dashLineColor(0xffffff, Chart.Transparent)); // , Chart.Transparent, -1, 0xffffff, 0xffffff // Add a legend box at (55, 32) (top of the chart) with horizontal // layout. Use 9 pts Arial Bold font. Set the background and border color // to Transparent. //c.addLegend(55, 32, false, "Arial Bold", 9).setBackground( // Chart.Transparent); // Add a title box to the chart using 15 pts Times Bold Italic font. The // title is in CDML and includes embedded images for highlight. The text // is white (ffffff) on a dark red (880000) background, with soft // lighting effect from the right side. //c.addTitle( // "<*block,valign=absmiddle*><*img=star.png*><*img=star.png*> " + // "Performance Enhancer <*img=star.png*><*img=star.png*><*/*>", // "Times New Roman Bold Italic", 15, 0xffffff).setBackground(0x880000, // -1, Chart.softLighting(Chart.Right)); // Add a title to the y axis // c.yAxis().setTitle("Energy Concentration (KJ per liter)"); // Set the labels on the x axis c.xAxis().setLabels(labels); // Add a title to the x axis using CMDL //c.xAxis().setTitle( // "<*block,valign=absmiddle*><*img=clock.png*> Elapsed Time (hour)" + // "<*/*>"); c.yAxis().setLinearScale(0, _max_chart + 50); // Set the axes width to 2 pixels c.xAxis().setWidth(2); //c.yAxis().setWidth(2); c.xAxis().setTitle(" (Date) ", "Arial Bold ", 15); c.addLegend(55, 5, false, "Arial Bold", 13).setBackground( Chart.Transparent); // Add a spline layer to the chart c.yAxis().setLabelStyle("Calibri Bold", 12); c.xAxis().setLabelStyle("Calibri Bold", 11); c.yAxis().setWidth(2); c.setNumberFormat(','); SplineLayer layer = c.addSplineLayer(); // Set the default line width to 2 pixels layer.setLineWidth(5); // Add a data set to the spline layer, using blue (0000c0) as the line // color, with yellow (ffff00) circle symbols. layer.addDataSet(data0, 0x0000c0, "Fatory 1").setDataSymbol( Chart.NoShape, 20, 0xffff00); // Add a data set to the spline layer, using brown (982810) as the line // color, with pink (f040f0) diamond symbols. layer.addDataSet(data1, 0x982810, "Fatory 2").setDataSymbol( Chart.NoShape, 20, 0xf040f0); layer.addDataSet(data2, 0xdb6e25, "Fatory 3").setDataSymbol( Chart.NoShape, 20, 0x0050f0); layer.addDataSet(data3, 0x004000, "Fatory 4").setDataSymbol( Chart.NoShape, 20, 0xf04000); // Add a custom CDML text at the bottom right of the plot area as the // logo //c.addText(575, 250, // "<*block,valign=absmiddle*><*img=small_molecule.png*> <*block*>" + // "<*font=Times New Roman Bold Italic,size=10,color=804040*>" + // "Molecular\nEngineering<*/*>").setAlignment(Chart.BottomRight); // Output the chart viewer.Chart = c; //include tool tip for the chart //viewer.ImageMap = c.getHTMLImageMap("clickable", "", // "title='{dataSetName} at t = {xLabel} hour: {value} KJ/liter'"); }