Visifire中图表的导出
                                                            生活随笔
收集整理的這篇文章主要介紹了
                                Visifire中图表的导出
小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.                        
                                ?
1 public Form1()2 {
3 InitializeComponent();
4 CreateChar1();
5 }
6
7 /// 創(chuàng)建一個數(shù)據(jù)圖表
8 private void CreateChar1()
9 {
10 Visifire.Charts.Chart _chart = new Visifire.Charts.Chart();
11 Title title = new Title();
12 title.Text = "圖表標題";
13 _chart.Titles.Add(title);
14
15 Visifire.Charts.Axis charAxisX = new Visifire.Charts.Axis();
16 charAxisX.Title = "圖表X軸";
17 _chart.AxesX.Add(charAxisX);
18 Visifire.Charts.Axis charAxisY = new Visifire.Charts.Axis();
19 charAxisY.Title = "圖表Y軸";
20 _chart.AxesY.Add(charAxisY);
21
22 _chart.View3D = true;
23 Random rnd = new Random();
24 DataPoint dataPoint;
25 DataSeries dataSeries = new DataSeries();
26 dataSeries.RenderAs = RenderAs.Column;
27 for (int i = 0; i <= 7; i++)
28 {
29 dataPoint = new DataPoint();
30 dataPoint.AxisXLabel = i + "月";
31 dataPoint.YValue = rnd.Next(1, 100);
32 dataSeries.DataPoints.Add(dataPoint);
33 }
34 _chart.Series.Add(dataSeries);
35 elementHost1.Child = _chart;
36 }
37
38 //得到位圖
39 private System.Drawing.Bitmap GetBitmap()
40 {
41 System.Drawing.Point point = elementHost1.PointToScreen(new System.Drawing.Point(0, 0));//得elementHost1左上點源坐標
42 System.Drawing.Bitmap bitmap = new Bitmap(elementHost1.Width, elementHost1.Height); //位圖的大小
43 System.Drawing.Graphics g = System.Drawing.Graphics.FromImage(bitmap); //制圖
44 System.Drawing.Size size = new System.Drawing.Size(elementHost1.Width, elementHost1.Height);//要傳輸區(qū)域的大小
45 g.CopyFromScreen(point.X, point.Y, 0, 0, size); //源矩形左上角的點、目標矩形左上角的點
46 return bitmap;
47 }
48
49 //導(dǎo)出圖片
50 private void ExportChartImage()
51 {
52 Microsoft.Win32.SaveFileDialog sfd = new Microsoft.Win32.SaveFileDialog();//保存對話框
53 sfd.Title = "導(dǎo)出Exel和圖片"; //對話框標題
54 sfd.OverwritePrompt = true; //如果文件已經(jīng)存在,顯示警告
55 sfd.Filter = "Exel和圖片|*.xlsx";
56 if (sfd.ShowDialog() == true) //顯示對話框
57 {
58 string filename = sfd.FileName;
59 if (filename != null)
60 {
61 try
62 {
63 string bitfilename = System.IO.Path.GetDirectoryName(filename) + "\\" + System.IO.Path.GetFileNameWithoutExtension( filename) + ".jpg";
64 GetBitmap().Save(bitfilename, System.Drawing.Imaging.ImageFormat.Jpeg);//以Jpeg格式保存位圖
65 MessageBox.Show("導(dǎo)出成功!");
66 }
67 catch
68 {
69 MessageBox.Show("導(dǎo)出失敗!");
70 }
71 }
72 }
73 }
74 private void button1_Click(object sender, EventArgs e)
75 {
76 ExportChartImage();
77 }
轉(zhuǎn)載于:https://www.cnblogs.com/neluch/archive/2011/12/23/2299293.html
總結(jié)
以上是生活随笔為你收集整理的Visifire中图表的导出的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
 
                            
                        - 上一篇: 黑顶帽—lhMorpBlackTopHa
- 下一篇: 中文Ubuntu主目录下的文档文件夹改回
