Пример #1
0
        static void Main(string[] args)
        {
            var cd  = new Charts.Chart();
            var rnd = new Random();

            cd.AddSeries("Series1", Enumerable.Range(0, 10).Select(q => new Charts.PointData <int, DateTime>(q, DateTime.Now.AddSeconds(rnd.Next()))));
            cd.Format = new Charts.Format("00.0")
            {
                Color = Color.Red
            };
            cd[0].Format = new Charts.Format("yyyy-MM-dd HH:ss");
            foreach (var series in cd)
            {
                Console.WriteLine(cd.Title);
                foreach (var r in cd.Range)
                {
                    Console.WriteLine($"\t{r}");
                }
                Console.WriteLine(series.Name);
                foreach (var v in series)
                {
                    Console.WriteLine($"\t\t{v.RangeValue}, {v.SeriesValue}");
                }
            }
        }
Пример #2
0
 public OpenXmlChartVisual(IOpenXmlVisualContainer container, GraphicFrame graphicFrame) :
     base(container, graphicFrame)
 {
     this.chart = this.graphicFrame
                  .GetFirstChild <Drawing.Graphic>()
                  .GetFirstChild <Drawing.GraphicData>()
                  .GetFirstChild <Charts.Chart>();
 }
        public IChartVisual AppendChartVisual(string name)
        {
            ChartPart chartPart = this.container.Part.AddNewPartDefaultId <ChartPart>();

            chartPart.ChartSpace = new Charts.ChartSpace()
            {
                Date1904 = new Charts.Date1904()
                {
                    Val = false
                }
            }
            .AppendChildFluent(
                new Charts.Chart()
            {
                PlotArea        = new Charts.PlotArea(),
                DisplayBlanksAs = new Charts.DisplayBlanksAs()
                {
                    Val = Charts.DisplayBlanksAsValues.Gap
                }
            }
                );

            Charts.Chart chart = new Charts.Chart();
            chart.SetAttribute(new OpenXmlAttribute("r", "id", "http://schemas.openxmlformats.org/officeDocument/2006/relationships", this.container.Part.GetIdOfPart(chartPart)));

            GraphicFrame graphicFrame = this.shapeTree.AppendChild(new GraphicFrame()
            {
                NonVisualGraphicFrameProperties = new NonVisualGraphicFrameProperties()
                {
                    NonVisualDrawingProperties = new NonVisualDrawingProperties()
                    {
                        Name = name,
                        Id   = 6 // TODO: calculate
                    },
                    NonVisualGraphicFrameDrawingProperties = new NonVisualGraphicFrameDrawingProperties(),
                    ApplicationNonVisualDrawingProperties  = new ApplicationNonVisualDrawingProperties()
                },
                Graphic = new Drawing.Graphic()
                {
                    GraphicData = new Drawing.GraphicData()
                    {
                        Uri = "http://schemas.openxmlformats.org/drawingml/2006/chart"
                    }
                    .AppendChildFluent(chart)
                }
            });

            return(new OpenXmlChartVisual(this.container, graphicFrame));
        }