protected override Image DoCreateChartImage() { var chart = new LineChart(Parameters.ChartWidth, Parameters.ChartHeight); chart.SetData(Parameters.SeriaData.Select(t => new float[]{t.Key, t.Value}).ToList()); var webClient = new WebClient(); byte[] imageBytes = webClient.DownloadData(chart.GetUrl()); return new Bitmap(new MemoryStream(imageBytes)); }
public static string stepSizeTest() { int[] line1 = new int[] { 5, 10, 50, 34, 10, 25 }; LineChart lineChart = new LineChart(250, 150); lineChart.SetTitle("Step Size Test"); lineChart.AddAxis(new ChartAxis(ChartAxisType.Left)); lineChart.AddAxis(new ChartAxis(ChartAxisType.Bottom)); lineChart.SetData(line1); lineChart.SetGrid(20, 50); return lineChart.GetUrl(); }
public static string rangeMarkersTest() { float[] fdata = new float[] { 10, 30, 75, 40, 15 }; LineChart chart = new LineChart(250, 150); chart.SetTitle("Range markers test"); chart.SetData(fdata); chart.AddAxis(new ChartAxis(ChartAxisType.Left)); chart.AddAxis(new ChartAxis(ChartAxisType.Bottom)); chart.AddRangeMarker(new RangeMarker(RangeMarkerType.Horizontal, "EFEFEF", 0.2, 0.7)); chart.AddRangeMarker(new RangeMarker(RangeMarkerType.Vertical, "CCCCCC", 0.4, 0.6)); return chart.GetUrl(); }
public static string shapeMarkersTest() { float[] fdata = new float[] { 10, 30, 75, 40, 15 }; LineChart chart = new LineChart(300, 150); chart.SetTitle("Shape markers test"); chart.SetData(fdata); chart.AddAxis(new ChartAxis(ChartAxisType.Left)); chart.AddAxis(new ChartAxis(ChartAxisType.Bottom)); chart.AddShapeMarker(new ShapeMarker(ShapeMarkerType.Arrow, "FF0000", 0, 0, 5)); chart.AddShapeMarker(new ShapeMarker(ShapeMarkerType.Circle, "00FF00", 0, 1, 15)); chart.AddShapeMarker(new ShapeMarker(ShapeMarkerType.Cross, "0000FF", 0, 2, 15)); chart.AddShapeMarker(new ShapeMarker(ShapeMarkerType.VerticalLine, "FF0000", 0, 3, 2)); return chart.GetUrl(); }
public static string singleDatasetPerLine() { int[] line1 = new int[] { 5, 10, 50, 34, 10, 25 }; int[] line2 = new int[] { 15, 20, 60, 44, 20, 35 }; List<int[]> dataset = new List<int[]>(); dataset.Add(line1); dataset.Add(line2); LineChart lineChart = new LineChart(250, 150); lineChart.SetTitle("Single Dataset Per Line", "0000FF", 14); lineChart.SetData(dataset); lineChart.AddAxis(new ChartAxis(ChartAxisType.Bottom)); lineChart.AddAxis(new ChartAxis(ChartAxisType.Left)); return lineChart.GetUrl(); }
public static string linearStripesTest() { float[] fdata = new float[] { 10, 30, 75, 40, 15 }; LineChart chart = new LineChart(250, 150); chart.SetTitle("Linear Stripes Test"); chart.SetData(fdata); chart.AddAxis(new ChartAxis(ChartAxisType.Left)); chart.AddAxis(new ChartAxis(ChartAxisType.Bottom)); LinearStripesFill linearStripesFill = new LinearStripesFill(ChartFillTarget.ChartArea, 0); linearStripesFill.AddColorWidthPair("CCCCCC", 0.2); linearStripesFill.AddColorWidthPair("FFFFFF", 0.2); chart.AddLinearStripesFill(linearStripesFill); chart.AddSolidFill(new SolidFill(ChartFillTarget.Background, "EFEFEF")); return chart.GetUrl(); }
public static string lineColorAndLegendTest() { int[] line1 = new int[] { 5, 10, 50, 34, 10, 25 }; int[] line2 = new int[] { 15, 20, 60, 44, 20, 35 }; List<int[]> dataset = new List<int[]>(); dataset.Add(line1); dataset.Add(line2); LineChart lineChart = new LineChart(250, 150); lineChart.SetTitle("Line Color And Legend Test", "0000FF", 14); lineChart.SetData(dataset); lineChart.AddAxis(new ChartAxis(ChartAxisType.Bottom)); lineChart.AddAxis(new ChartAxis(ChartAxisType.Left)); lineChart.SetDatasetColors(new string[] { "FF0000", "00FF00" }); lineChart.SetLegend(new string[] { "line1", "line2" }); return lineChart.GetUrl(); }
public static string multiDatasetPerLine() { int[] line1x = new int[] { 0, 15, 30, 45, 60 }; int[] line1y = new int[] { 10, 50, 15, 60, 12}; int[] line2x = new int[] { 0, 15, 30, 45, 60 }; int[] line2y = new int[] { 45, 12, 60, 34, 60 }; List<int[]> dataset = new List<int[]>(); dataset.Add(line1x); dataset.Add(line1y); dataset.Add(line2x); dataset.Add(line2y); LineChart lineChart = new LineChart(250, 150, LineChartType.MultiDataSet); lineChart.SetTitle("Multi Dataset Per Line", "0000FF", 14); lineChart.SetData(dataset); lineChart.AddAxis(new ChartAxis(ChartAxisType.Bottom)); lineChart.AddAxis(new ChartAxis(ChartAxisType.Left)); return lineChart.GetUrl(); }
public static string linearGradientFillTest() { int[] line1 = new int[] { 5, 10, 50, 34, 10, 25 }; LineChart lineChart = new LineChart(250, 150); lineChart.SetTitle("Linear Gradient fill test"); lineChart.SetData(line1); lineChart.AddAxis(new ChartAxis(ChartAxisType.Left)); lineChart.AddAxis(new ChartAxis(ChartAxisType.Bottom)); LinearGradientFill fill = new LinearGradientFill(ChartFillTarget.ChartArea, 45); fill.AddColorOffsetPair("FFFFFF", 0); fill.AddColorOffsetPair("76A4FB", 0.75); SolidFill bgFill = new SolidFill(ChartFillTarget.Background, "EFEFEF"); lineChart.AddLinearGradientFill(fill); lineChart.AddSolidFill(bgFill); return lineChart.GetUrl(); }
public static string multiLineAreaFillsTest() { float[] line1 = new float[] { 15, 45, 5, 30, 10 }; float[] line2 = new float[] { 35, 65, 25, 50, 30 }; float[] line3 = new float[] { 55, 85, 45, 70, 50 }; List<float[]> dataset = new List<float[]>(); dataset.Add(line1); dataset.Add(line2); dataset.Add(line3); LineChart lineChart = new LineChart(250, 150, LineChartType.SingleDataSet); lineChart.SetTitle("Area fills test"); lineChart.SetData(dataset); lineChart.AddAxis(new ChartAxis(ChartAxisType.Left)); lineChart.AddAxis(new ChartAxis(ChartAxisType.Bottom)); lineChart.AddFillArea(new FillArea("FF0000", 0, 1)); lineChart.AddFillArea(new FillArea("224499", 1, 2)); return lineChart.GetUrl(); }
public static string solidFillTest() { int[] line1 = new int[] { 5, 10, 50, 34, 10, 25 }; LineChart lineChart = new LineChart(250, 150); lineChart.SetTitle("Solid fill test"); lineChart.SetData(line1); lineChart.AddAxis(new ChartAxis(ChartAxisType.Left)); lineChart.AddAxis(new ChartAxis(ChartAxisType.Bottom)); SolidFill bgFill = new SolidFill(ChartFillTarget.Background, "EFEFEF"); SolidFill chartAreaFill = new SolidFill(ChartFillTarget.ChartArea, "000000"); lineChart.AddSolidFill(bgFill); lineChart.AddSolidFill(chartAreaFill); return lineChart.GetUrl(); }
public static string singleLineAreaFillTest() { float[] fdata = new float[] { 10, 30, 75, 40, 15 }; LineChart chart = new LineChart(250, 150); chart.SetTitle("Area fill test"); chart.SetData(fdata); chart.AddAxis(new ChartAxis(ChartAxisType.Left)); chart.AddAxis(new ChartAxis(ChartAxisType.Bottom)); chart.AddFillArea(new FillArea("224499", 0)); return chart.GetUrl(); }