Microsoft Chart Controls 心得(1)

全面掌握Microsoft Chart Control 5.0 本文还有配套的精品资源,点击获取 简介:Microsoft Chart Control 5.0 是.NET Framework中的一个功能丰富的数据可视化组件,支持Windows Forms和***应用。该控件能够轻松创建高质量图表,如柱状图、折线图等,同时提供动态数据绑定、多样化图表类型、自定义样式、交互性以及数据绑定等功能。此外,该控件还提供高级图表功能和Web服务兼容... 阅读详情

最近在 瓶水相逢.Net 繪圖的新利器 - Microsoft Chart Controls for .NET Framework 3.5 這篇文章看到了這個繪圖的好東西.趕緊下載來玩玩看,也在這邊留一下我自己的學習紀錄.

事前準備

  1. Visual Studio 2008 升級到sp1
  2. .Net Framework 3.0 升級到sp1
  3. 安裝  Microsoft Chart Controls for Microsoft .NET Framework 3.5
    開發網站發佈的Server也需要安裝此項目.
  4. 安裝 Microsoft Chart Controls Add-on for Microsoft Visual Studio 2008
    有安裝此項目才有辦法在VS2008裡面拖曳控制項還有IntelliSense.

Microsoft Chart Controls 網路資料

  1. Microsoft Chart Controls for .NET Framework Documentation
  2. Samples Environment for Microsoft Chart Controls
    範例非常的多,建議大家如果跟我一樣沒使用過類似的東西,可以下載回去邊看邊學速度會快很多
    有分Web跟Windows Form兩種Sample.
  3. MSDN上的論壇

Web基本操作心得

  1. 構成介紹 
     
    上圖由官方Web Sample中取得,很清楚的將整個圖表的構成做了一些分類,我再補充備註一下
    整個圖型有被標著出來的部分都是個別的類別物件,而Chart Control (Chart Picture) 就如同網業一般,可以將各個物件分別得透過新增的方式新增至圖型裡面.類似Page.Control.Add(Control)這種意思~~~
    大概的階層關係為 Chart Control ==> ChartArea ==> Series ==> Point
    而由左而右皆可為一對多的關係,由這些項目自身的一些設定構成了一張圖

    ps.Sorry 這是我個人的想法,如果有錯麻煩各位先進跟我說一下.

  2. 簡單Sample
    1. 拉一個Button 跟 Chart 到 Design 畫面 
       
      不過由於我想從程式來建ChartArea跟Series所以我就先將自動產生的Series1跟ChartArea1移除
      <head runat="server">
          <title>Chart_Test2</title>
      </head>
      <body>
          <form id="form1" runat="server">
          <div>
          
              <asp:Button ID="Button1" runat="server" onclick="Button1_Click" Text="Button" />
              <br />
              <asp:Chart ID="Chart1" runat="server" Height="500px" Width="800px">
      
              </asp:Chart>
          
          </div>
          </form>
      </body>
      </html>

       
    2. 填入程式碼至Button Click事件
      try
              {
                  #region Step1. 設定 Chart Title
                  Title ChartTitle = new Title();
                  System.Drawing.Font font = new System.Drawing.Font("標楷體", 20);
                  ChartTitle.Font = font;
                  ChartTitle.ForeColor = System.Drawing.ColorTranslator.FromHtml("#6B8E23");             
                  ChartTitle.Text = "Sample圖表";
                  //新增至Chart Control
                  Chart1.Titles.Add(ChartTitle);
                  #endregion
      
                  #region Step2. 產生工作區塊(Area1)
                  ChartArea cArea1 = new ChartArea("Area1");
                  //設定Area1的X,Y軸標題
                  cArea1.AxisX.Title = "時刻";
                  cArea1.AxisY.Title = "數量";
                  //X,Y軸刻度區間
                  cArea1.AxisX.Interval = 2;
                  cArea1.AxisY.Interval = 10;
      
                  #region Step2.1 產生Area1的Series
                  
      
                  #region Series1填入資料
                  List<string> lstX1 = new List<string>();
                  List<string> lstY1 = new List<string>();
                  Random r1 = new Random((int)DateTime.Now.Ticks);
                  for (int i = 1; i < 24; i++)
                  {
                      lstX1.Add(i.ToString());
                  }
                  for (int i = 1; i < 24; i++)
                  {
                      int x = r1.Next(0, 100);
                      lstY1.Add(x.ToString());
                  }
                  #endregion
      
                  #region series1
                  Series series1 = new Series("種類A");
                  //設定要顯示在哪一個ChartArea
                  series1.ChartArea = "Area1";
                  //設定圖表種類
                  series1.ChartType = SeriesChartType.Column;
                  //是否將值show在value label上
                  series1.IsValueShownAsLabel = true;
                  //填入資料
                  series1.Points.DataBindXY(lstX1, lstY1);
                  #endregion
      
      
                  #region Series1填入資料
                  List<string> lstX2 = new List<string>();
                  List<string> lstY2 = new List<string>();
                  Random r2 = new Random(((int)DateTime.Now.Ticks) + 1);
                  for (int i = 1; i < 24; i++)
                  {
                      lstX2.Add(i.ToString());
                  }
                  for (int i = 1; i < 24; i++)
                  {
                      int x = r2.Next(0, 100);
                      lstY2.Add(x.ToString());
                  }
                  #endregion
      
                  #region series2
                  Series series2 = new Series("種類B");
                  //設定要顯示在哪一個ChartArea
                  series2.ChartArea = "Area1";
                  //設定圖表種類
                  series2.ChartType = SeriesChartType.Spline;
                  //是否將值show在value label上
                  series2.IsValueShownAsLabel = true;
                  //填入資料
                  series2.Points.DataBindXY(lstX2, lstY2);
                  series2.BorderWidth = 3;
                  #endregion
      
                  #endregion
      
                  #endregion
      
                  #region Step3. 設定Legend
                  Legend leg = new Legend("分類");
                  leg.Docking = Docking.Right;
                  Chart1.Legends.Add(leg);
                  #endregion
      
                  Chart1.ChartAreas.Add(cArea1);
                  Chart1.Series.Add(series1);
                  Chart1.Series.Add(series2);
      
              }
              catch (Exception ex)
              {
                  Response.Write(ex.Message.ToString());
              }
      


       
    3. 執行結果


 

上面這最簡單的一種效果,有幾點問題要注意

  1. 不是每一種圖型都可以重疊在同一個ChartArea上面
  2. BorderWidth的設定不一定對各種圖型都有效果,目前只知道對線圖有效果

希望之後我能多試幾種圖型以及圖行互動的功能出來跟大家分享

這次微軟真的送了我們一個好東西,只不過很多企業連 .Net Framework2.0 都還沒摸透就要說服他們換 .Net Framework3.5 似乎有點困難

希望大家使用愉快

 

===========================這是簽名檔分隔線==============================
我沒有甚麼技術能力
不過卻希望在這邊跟大家分享自己遭遇的一些問題
希望大家有更好的方法可以跟我說!!
======================================================================

 

转自:http://www.dotblogs.com.tw/fatty0860/archive/2008/11/22/6046.aspx

详解Microsoft Chart Controls:.NET图表绘制 在数据可视化的世界中,Microsoft Chart Controls是.NET开发者广泛应用的组件之一。它为创建各种动态图表提供了丰富的工具和功能,可以嵌入到ASP.NET Web Forms, Windows Forms和WPF应用程序中。从基础的折线图到复杂的饼图和散点图,这一系列的控件使得设计师能够将原始数据转化为直观的视觉图像。本章将为读者概述Microsoft Chart Controls的基本组成,解释其核心功能,并讨论如何在.NET应用程序中实施。 阅读详情

相关推荐

Microsoft Chart Controls

从msdn下载下来的,自己做了小小的改动,可以在vs2012上运行。请将系统语言设置为英语,负责会出现编码错误;介绍了所有Chart的使用,很全面,可以作为教学材料,或者技术储备。

用Microsoft Chart Controls实现曲线图

Microsoft Chart Controls(简称MSChart)控件,给图形统计和报表图形显示提供了很好的解决办法,同时支持Web和WinForm两种方式。 MSChart 在.NET 4.0自带的有,.NET 3.5 需要下载相应的插件(如果用的是VS2010做开发但是选择的版本是3.5的而不是默认的4.0话,请按本文介绍的.NET 3.5 进行插件安装), 官方例子(web和winform):http://archive.msdn.microsoft.com/mschart/Release/Pro

君一席 2294

MSChart 4.0(VS2010) Winform微软官方示例源码

Windows Forms Samples Environment for Microsoft Chart Controls,MSChart 4.0(VS2010) Winform微软官方示例源码

微软图表控件MsChart使用初探

昨天在网上看到了微软发布了.NET 3.5框架下的图表控件,第一时间抓下来看了一下,发觉功能很强劲,基本上能想到的图表都可以使用它绘制出来,给图形统计和报表图形显示提供了很好的解决办法,同时支持Web和WinForm两种方式,不过缺点也比较明显,只能在最新的开发环境中使用,需要.Net 3.5 Sp1以及VS 2008的开发环境。 下面是下载地址: 控件:Microsoft...

weixin_34050427的博客 717

Microsoft Chart Controls for .NET Framework示例

Microsoft Chart Controls for .NET Framework支持各种丰富的图表选项,包括pie(饼图), area(区域), range(范围), point(点), circular(圆形), accumulation(累积), data distribution(数据分布), ajax interactive(AJAX交互), doughnut(甜圈图)等等。你可以在控件的声明中静态地声明图表数据,或者也可以使用数据绑定动态地填充。在运行时,该服务器控件会生成一个图片(譬如一个.PNG文件),是使用控件输出的元素在页面的客户端HTML中引用的。该服务器控件支持缓存图表图片的功能,还支持保存到硬盘上以在持久性场景中使用的功能。它不要求安装其他的服务器软件,可以用于任何标准的ASP.NET网页上。 使用 整个图形控件主要由以下几个部份组成: 1.Annotations --图形注解集合 2.ChartAreas --图表区域集合 3.Legends --图例集合 4.Series    --图表序列集合(即图表数据对象集合) 5.Titles    --图标的标题集合 该示例代码可以通过设置各类参数,动态展现了三维、平面、曲线等各类Chart图及结合Ajax的应用,具体功能请查看[本地演示] 同时可以在线查看C#和Vb.net相关源码,数据库采用的是Access 运行程序前请按照源码目录下的 MSChart.exe

【KITTI数据集中Raw_Data数据标定文件中的参数关系解读】

上一节本人将KITTI Odometry数据集中的参数文件进行了解释。本节主要针对一些做融合slam的人,将Raw_Data数据标定文件中的参数按照自己的理解做如下阐述。其中,所讲之处如有错误,欢迎各位批评指正。

weixin_43389152的博客 1526

[C#] 老古董的 Microsoft Chart Controls 也可以进行数据预测

我要先声明,这篇文章介绍到的内容虽说不是不能用,但玩乐成分居多,大家看看就好,不要太认真。 1. Microsoft Chart Controls 中的 FinancialFormula 在上一篇文章 使用 Math.Net 进行曲线拟合和数据预测 中,我介绍了如何使用 Math.Net ,这篇文章玩玩“新”花样,用古老的 Microsoft Chart Controls 实现相同的功能。 A long time ago in a galaxy far, far away… 微软推出了一套免费又强大的图

dino.c 647

LoRa物联网实战:用新大陆模块打造智能LED呼吸灯(附完整代码解析)

本文详细介绍了如何利用新大陆LoRa模块实现工业级智能LED呼吸灯的设计与开发。通过256级PWM调制的呼吸灯效果,结合LoRa无线控制技术,实现设备状态的可视化反馈和多设备同步控制。文章包含完整的硬件选型、电路设计、算法优化和代码实现,特别适合物联网开发者和硬件工程师参考。

github5actions的博客 86

Microsoft Chart Control----从此做个不怕图表编程的程序员

Microsoft Chart Control是款用来绘制各种统计图表的控件,用它可以轻松的绘制出:柱图,饼图,折现图,点图,面积图,堆图。有了这种神器,咱们以后就可以对各种图表需求说Yes啦。    怎么先来看看一些用Microsoft Chart Control绘制出来的图表吧:柱图折线图面积图饼图点图区域图分布图漏斗图财务统计相关的图表财务相关的图表复合图表(可以在一个图表盘中绘制多种图表)

GhostHouse 7588

深入解析docx4j:从Word到PDF的高保真转换实战

本文深入解析了如何使用纯Java开源库docx4j实现Word到PDF的高保真转换。针对中文环境,重点讲解了字体映射原理、Linux服务器字体部署方案,并提供了完整的代码示例和配置方法。同时,文章涵盖了表格、图片处理、性能优化及生产环境部署指南,帮助Java开发者构建稳定、可控的文档转换服务。

weixin_29237635的博客 673

ESP-CSI:使用ESP32进行CSI(信道状态信息)采集

使用esp32进行csi(信道状态信息)采集和处理

capsize的博客 8280

Microsoft Chart Controls 小结

今天要总结的是Microsoft Chart Controls。            微软在收购了 Dundas 这家优秀的图表组件公司后,日前释出了功能相当强大,而且完全免费的图表组件,名为「Microsoft Chart Controls for Microsoft .NET Framework 3.5」。 过去要在 ASP.NET 或 Windows Form 中绘制图表,可能要花

黎明前的黑暗 4498

MIC卡的OFED驱动安装

 IB网络和OFED驱动安装 IB InfiniBand是一个统一的互联结构,可以处理存储I/O、网络I/O和进程间通信(IPC)。它可以将磁盘阵列、SANs、LANs、服务器和集群服务器进行互联,也可以连接外部网络(比如WAN、VPN、互联网)。设计InfiniBand的目的主要是用于企业数据中心,大型的或小型的。目标主要是实现高的可靠性、可用性、可扩展性和高的性能。Inf

beglorious的专栏 5106

Chart Controls 简介与下载

虽然博客园已有人介绍过了,还是忍不住介绍一下微软这套免费又功能强大的图表控件「Microsoft Chart Controls for Microsoft .NET Framework 3.5」。本帖并提供相关软件、文件、官方示例的下载点。 微软在收购了 Dundas 这家优秀的图表组件公司后,日前释出了功能相当强大,而且完全免费的图表组件,名为「M...

a572893208的博客 158

ComfyUI 汉化教程(中文界面)

如果你对翻译的结果不满意,还可以进行修改。首先,进入目录,可以看到该目录中有很多 JSON 文件:打开 JSON 文件,找到要修改的内容,修改对应的Value值即可:最后,重启 ComfyUI 即可。

水滴的博客 1万+

12、硬件工程师笔试面试——MOS管(2025版本)

在设计和测试过程中,可以参考相关的EMC测试标准和指南,如CE认证EMC电磁兼容测试介绍 和电磁兼容性(EMC)测试方法与整改指南 ,以及电磁兼容(EMC)的标准与测试内容 ,来确保MOSFET的EMC性能符合行业标准。在高频应用中,MOSFET的开关速度对电路的整体性能至关重要。是一款高电压同步N沟道MOSFET驱动器,具有自举电源电压至114V的能力,宽VCC电压范围,自适应贯通保护功能,以及高达1.4A的峰值顶端栅极上拉电流,适用于分布式电源架构、汽车电源、高密度电源模块和电信系统等应用。

XU157303764的博客 7092

在WPF中使用Microsoft Chart Controls (MSchart)

原链接 http://www.dotblogs.com.tw/chou/archive/2009/10/03/10902.aspx 感谢作者   1. 前言 Microsoft Chart Controls 是微軟提供,適用於 .NET Framework 3.5 SP1 的 ASP.NET 和 Windows Form 圖表控制項,由於已經有蠻多文章介紹在 ASP.NET 與 Windo

Lassewang的成长历程 5031

X86/64架构中的总线 和 ARM架构中总线的理解

内部总线 /CPU总线/FSB前端总线:类似ARM架构中的AHB总线北桥? 直接和CPU连接,这条总线主要由CPU使用,用来与高速缓存、主存和北桥(或MCH)之间传送信息。 外部总线:类似ARM架构中的APB总线(外围总线)南桥?例如PCI总线、USB总线等 通过北桥与CPU连接(南桥?),是CPU与内存RAM、ROM和输入/输出设备接口之间进行通讯的通路 内存总线:内存与北桥间的总线称为内存总线 ...

a746742897的博客 1067

微软发布.NET平台免费的图表Chart控件 [转载]

该控件支持多种图表(2D和3D),如饼图,柱状图,曲线图,散点图,雷达图,面积图,股票图等,而且同时支持Winform 和 Asp.net。 但令人遗憾的是,微软目前放出的只是.Net Framework 3.5版本的,没有For .Net Framework 2.0的。 据知情人士透漏,该控件是微软收购的,来源于 http://www.dundas.com/,for .net 2.0 的版

u014230987的专栏 1685

迈瑞BS系列全自动生化分析仪LIS协议接口手册(内含HL7和ASTM)

迈瑞BS系列全自动生化分析仪LIS协议接口手册,内含HL7和ASTM)

Statistics and Machine Learning Toolbox

Statistics and Machine Learning Toolbox(带书签),MATLAB统计学习工具

c# chart图表控件总结

一、什么是Micosoft.Chart.Controls Micosoft.Chart.Controls是微软自带的一个图形可视化的组件,可以在Web程序和窗体程序中(Windowsform)中使用。在.NET4.0之后(即VS2010之后)不需要再手动安装,集成在了VS里面,比如我用的VS2017版本,直接在工具箱中点开“ 数据 ”控件,里面就有一个Chart控件,直接拖动到窗体中即可,默认创...

a843538946的专栏 5347

计算机控制技术及应用

《计算机控制技术及应用》通过总结作者的科研成果和吸收国内外的先进理论、方法和技术,以计算机控制系统的网络化、开放化、智能化和集成化发展趋势为主线索,主要介绍计算机控制系统的基本概念和计算机控制系统的典型形式,计算机控制系统的数学描述与基本分析方法,以及数字PID控制器、最少拍控制系统、达林算法、状态变量设计法等设计方法及其各种改进算法。重点突出计算机控制系统输入输出通道接口的设计方法和典型控制系统的设计案例与实现方法等。

介紹好用元件:Microsoft Chart Controls for .NET 3.5

在 Web 環境製作圖表(Chart)通常不是一件容易的事,幾年前我就有看到 Dundas 公司開發出一系列非常優秀的圖表元件,只是光購買 for ASP.NET 的元件價格就要 US$699,說貴不貴、說便宜也不是很便宜。但在去年年中的(2007/6/4)時候微軟購買了 Dundas 公司所有的 Dundas Data Visualization 元件版權,並整合進 SQL Server

381

怀旧版电脑GBC模拟器

再现原版GBC掌机的界面,电脑运行连游戏界面都一样大小,很怀旧,很真实,(英文版)强烈推荐,很小的文件,很难才找到的。

Chart Controls 简介与下载点

虽然博客园已有人介绍过了,还是忍不住介绍一下微软这套免费又功能强大的图表控件「Microsoft Chart Controls for Microsoft .NET Framework 3.5」。本帖并提供相关软件、文件、官方示例的下载点。微软在收购了 Dundas 这家优秀的图表组件公司后,日前释出了功能相当强大,而且完全免费的图表组件,名为「Microsoft Chart Controls f...

weixin_30808253的博客 100

Microsoft Chart Controls for .NET Framework

微软的图表控件,至少需要.NET Framework 3.5支持,若是.NET Framework 3.5 环境的需要下载控件安装,而已经集成到.NET Framework 4中。

无幻 6366
上一篇: 为ASP.NET MVC应用程序创建单元测试
下一篇: Microsoft Chart Controls 心得(2) - 如何透過圖表傳值
Csdbfans
博客等级 码龄18年 73粉丝 33原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值