用Dev的ChartControl绘制圆滑曲线并插到excel中!

 public static void AddChartControl(ExcelPackage package, List<HisCycleLayerUnit> cycList, string picPath)
        {
            ChartControl spineChart = new ChartControl();
           
            Series series1 = new Series("充电容量", ViewType.Spline);
            Series series2 = new Series("放电容量", ViewType.Spline);
            series1.Points.Add(new SeriesPoint(1, 2));
            series1.Points.Add(new SeriesPoint(2, 5));
            series1.Points.Add(new SeriesPoint(3, 3));
            series1.Points.Add(new SeriesPoint(4, 8));

            series2.Points.Add(new SeriesPoint(2, 4));
            series2.Points.Add(new SeriesPoint(3, 7));
            series2.Points.Add(new SeriesPoint(4, 5));
            series2.Points.Add(new SeriesPoint(5, 10));

           SplineSeriesView view1 = new SplineSeriesView();
            view1.Color = Color.Red;

       
            SplineSeriesView view2 = new SplineSeriesView();
            view2.Color = Color.Black;

            series1.View = view1 ;
            series2.View = view2;

      //      ((LineSeriesView)series1.View).LineMarkerOptions.Visible = false;
       //     ((LineSeriesView)series2.View).LineMarkerOptions.Visible = false;

            spineChart.Series.Add(series1);
            spineChart.Series.Add(series2);


            series1.ArgumentScaleType = ScaleType.Numerical;
            series2.ArgumentScaleType = ScaleType.Numerical;

            XYDiagram diagram = (XYDiagram)spineChart.Diagram;

            diagram.AxisX.GridLines.Color = Color.Red;
            diagram.AxisX.Title.Visibility = DefaultBoolean.True;
            diagram.AxisX.Title.Alignment = StringAlignment.Center;
            diagram.AxisX.Title.Text = "时间";
            diagram.AxisX.Title.EnableAntialiasing = DefaultBoolean.True;
            diagram.AxisX.Title.Font = new Font("Tahoma", 12, FontStyle.Bold);

            diagram.AxisY.GridLines.Color = Color.YellowGreen;
            diagram.AxisY.Title.Visibility = DefaultBoolean.True;
            diagram.AxisY.Title.Alignment = StringAlignment.Center;
            diagram.AxisY.Title.Text = "纵XX";
            diagram.AxisY.Title.EnableAntialiasing = DefaultBoolean.True;
            diagram.AxisY.Title.Font = new Font("Tahoma", 12, FontStyle.Bold);


            ((XYDiagram)spineChart.Diagram).EnableAxisXZooming = true;
            spineChart.Titles.Add(new ChartTitle());
            spineChart.Titles[0].Text = "循环数据曲线";
            spineChart.Titles[0].Font = new Font("Tahoma", 14, FontStyle.Bold);
            spineChart.Dock = DockStyle.Fill;

          //  spineChart.ExportToImage();

           // ExcelWorksheet worksheet = package.Workbook.Worksheets.Add("曲线图");
     
            PrintingSystem ps = new PrintingSystem();
            CompositeLink link = new CompositeLink(ps);
            ps.Links.Add(link);
            link.Links.Add(CreatePrintableLink(spineChart));
            link.Landscape = true;
            XlsxExportOptions options = new XlsxExportOptions();
            link.ExportToXlsx(picPath, options);

      
        }

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值