已阅读5页,还剩4页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
最近由于项目需要,要做几个统计图. 网上找了找发现了ZedGraph控件和dotnetCHARTIN控件.ZedGraph:支持winform和webform。支持可视化设计,并且最主要他是开源的.dotnetCHARTIN:需要到网上找破解版的 下载地址:/xiaogangqq123/dotnetcharting.rar网上说dotnetCHARTIN这个控件比较耗费性能.并且支持二维和三维.ZedGraph控件开源.扩展性强,但是只支持二维图形.性能较好.由于项目需要三维的 所以选择了dotnetCHARTIN这个.通过几次反复测试.感觉dotnetCHARTIN性能还行.当然是在理想情况下.由于网上dotnetCHARTIN资料较少.看了下帮助文档.自己做了个Demo分别对10条线一万条数据和10条10万条数据做了个初步测试.1万条:生成图片速度大概在2秒到5秒;10万条:速度估计在5秒-10秒之间 ,大体是这个样子.贴出代码:C#代码 public class Charting #region 共有变量 / / 图片存放路径 / public string PhaysicalImagePath get; set; / / 标题 / public string Title get; set; / / X轴名称 / public string XName get; set; / / Y轴名称 / public string YName get; set; / / 图例名称 / public string SeriseName get; set; / / 宽度 / public int SeriseWidth get; set; / / 高度 / public int SeriseHeight get; set; / / 数据源 / public DataTable DataSoure get; set; public bool IsUse3D get; set; public CharType type get; set; #endregion public Charting() / / 柱形图 / / public void CreateCombo(dotnetCHARTING.Chart Chart1) Chart1.Title = Title; Chart1.XAxis.Label.Text = XName; Chart1.YAxis.Label.Text = this.YName; Chart1.TempDirectory = this.PhaysicalImagePath; Chart1.Width = this.SeriseWidth; Chart1.Height = this.SeriseHeight; Chart1.Type = ChartType.Combo; Chart1.Series.Type = SeriesType.Cylinder; Chart1.Series.Name = this.SeriseName; Chart1.Series.Data = this.DataSoure; Chart1.SeriesCollection.Add(); Chart1.DefaultSeries.DefaultElement.ShowValue = true; Chart1.ShadingEffect = true; Chart1.Use3D = IsUse3D; Chart1.Series.DefaultElement.ShowValue = true; / / 饼图 / / public void CreatePie(dotnetCHARTING.Chart Chart1) Chart1.Title = Title; Chart1.XAxis.Label.Text = XName; Chart1.YAxis.Label.Text = this.YName; Chart1.TempDirectory = this.PhaysicalImagePath; Chart1.Width = this.SeriseWidth; Chart1.Height = this.SeriseHeight; Chart1.Type = ChartType.Pie; Chart1.Series.Type = SeriesType.Cylinder; Chart1.Series.Name = this.SeriseName; Chart1.ShadingEffect = true; Chart1.Use3D = IsUse3D; Chart1.DefaultSeries.DefaultElement.Transparency = 20; Chart1.DefaultSeries.DefaultElement.ShowValue = true; Chart1.PieLabelMode = PieLabelMode.Outside; Chart1.SeriesCollection.Add(getArrayData(); Chart1.Series.DefaultElement.ShowValue = true; private SeriesCollection getArrayData() SeriesCollection SC = new SeriesCollection(); DataTable dt = this.DataSoure; for (int i = 0; i dt.Rows.Count; i+) Series s = new Series(); s.Name = dt.Rowsi0.ToString(); Element e = new Element(); / 每元素的名称 e.Name = dt.Rowsi0.ToString(); / 每元素的大小数值 e.YValue = Convert.ToDouble(dt.Rowsi1.ToString(); s.Elements.Add(e); SC.Add(s); return SC; / / 曲线图 / / public void CreateLine(dotnetCHARTING.Chart Chart1) Chart1.Title = Title; Chart1.XAxis.Label.Text = XName; Chart1.YAxis.Label.Text = this.YName; Chart1.TempDirectory = this.PhaysicalImagePath; Chart1.Width = this.SeriseWidth; Chart1.Height = this.SeriseHeight; Chart1.Type = ChartType.Combo; /此处一定要用DefaultSeries.Type = SeriesType.Line 否则没效果 Chart1.DefaultSeries.Type = SeriesType.Line; Chart1.Series.Name = this.SeriseName; Chart1.Series.Data = this.DataSoure; Chart1.SeriesCollection.Add(); Chart1.DefaultSeries.DefaultElement.ShowValue = true; Chart1.ShadingEffect = false; Chart1.Use3D = IsUse3D; Chart1.Series.DefaultElement.ShowValue = true; 前台调用Code:代码 Charting ch = new Charting(); ch.Title = 统计; ch.XName = 国家; ch.YName = 数量(亿); ch.SeriseName = Num; ch.SeriseHeight = 500; ch.SeriseWidth = 1240; ch.PhaysicalImagePath = temp; ch.DataSoure = GetData.GetTablePie(); ch.IsUse3D = true; /创建图形,Chart1页面dotnetChartin的控件ID ch.Cre
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025届上海市通河中学高一物理第一学期期中联考试题含解析
- 2025届陕西省商洛物理高二第一学期期末质量跟踪监视模拟试题含解析
- 四川省雅安市雅安中学2025届高二物理第一学期期末联考模拟试题含解析
- 2025届黑龙江安达市育才高中高三上物理期中质量跟踪监视试题含解析
- 甘肃省嘉峪关市(2024年-2025年小学五年级语文)统编版阶段练习(上学期)试卷及答案
- 老人寿辰会主题60
- 急腹症的护理课件
- 一年级小学生语文周记(20篇)
- 2024学生劳动合同免责范文
- 2024年印刷装订设备收售合同范本
- 光伏电站施工组织设计
- 全人教版四年级英语上册期中考试知识点汇总-必背的重点
- XMT-7000温控仪使用说明书
- 2023年1月高三英语试题(浙江卷)+听力+答案+作文
- 汉字听写大赛汇总成语
- 主要动物疫病检疫-共患病检疫(动物防疫与检疫技术)
- 体位引流课件
- 媒介伦理及规范案例教学演示文稿
- 混凝土有限公司安全管理工作责任追究制度
- 人教版三年级数学上册“倍的认识”作业设计
- 大数据可视化知到章节答案智慧树2023年浙江大学
评论
0/150
提交评论