chart 控件主要有 Titles 标题集合  Chart Area图形显示区域 Series图表集合 Legends图列的集合

一、常用事件:

1. Series1.Points.DataBind()绑定数据点集合,如果要在一个MSChart控件的一个绘图区(ChartArea)内添加多个不同数据源的图表,就用这个主动绑定数据集合的方法。可以将表中指定字段的值绑定到指定的坐标轴上。

2. MSChart1.DataBind()给整个MSChart绑定一个数据源,该MSChart中的图表全部可以使用该数据源作为统计来源

二、MSChart的元素组成,最常用的属性包括:

ChartAreas:增加多个绘图区域,每个绘图区域包含独立的图表组、数据源,用于多个图表类型在一个绘图区不兼容时。

AlignmentOrientation:图表区对齐方向,定义两个绘图区域间的对齐方式。

AlignmentStyle:图表区对齐类型,定义图表间用以对其的元素。

AlignWithChartArea:参照对齐的绘图区名称。

InnerPlotPosition:图表在绘图区内的位置属性。

Auto:是否自动对齐。

Height:图表在绘图区内的高度(百分比,取值在0-100)

Width:图表在绘图区内的宽度(百分比,取值在0-100)

X,Y:图表在绘图区内左上角坐标

Position:绘图区位置属性,同InnerPlotPosition。

Name:绘图区名称。

Axis:坐标轴集合

Title:坐标轴标题

TitleAlignment:坐标轴标题对齐方式

Interval:轴刻度间隔大小

IntervalOffset:轴刻度偏移量大小

MinorGrid:次要辅助线

MinorTickMark:次要刻度线

MajorGrid:主要辅助线

MajorTickMark:主要刻度线

DataSourceID:MSChart的数据源。

Legends:图例说明。

Palette:图表外观定义。

三、Series:最重要的属性,图表集合,就是最终看到的饼图、柱状图、线图、点图等构成的集合;可以将多种相互兼容的类型放在一个绘图区域内,形成复合图。

IsValueShownAsLabel:是否显示数据点标签,如果为true,在图表中显示每一个数据值

Label:数据点标签文本

LabelFormat:数据点标签文本格式

LabelAngle:标签字体角度

Name:图表名称

Points:数据点集合

XValueType:横坐标轴类型

YValueType:纵坐标轴类型

XValueMember:横坐标绑定的数据源(如果数据源为Table,则填写横坐标要显示的字段名称)

YValueMembers:纵坐标绑定的数据源(如果数据源为Table,则填写纵坐标要显示的字段名称,纵坐标可以有两个)

ChartArea:图表所属的绘图区域名称

ChartType:图表类型(柱形、饼形、线形、点形等)

Legend:图表使用的图例名称

Titles:标题集合。

width:MSChart的宽度。

height:MSChart的高度。

四、例子

Public Class Form1Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.LoadDim dt As DataTabledt = CreateDataTable()SetMSChartStyle()ConvertChart(dt)'databindChart1.DataBind()End SubPrivate Function CreateDataTable() As DataTableDim dt As New DataTable'Add three columns to the DataTabledt.Columns.Add("Date") 'Xdt.Columns.Add("Series1") 'data1dt.Columns.Add("Series2") 'data2dt.Columns.Add("Series3") 'data1dt.Columns.Add("Series4") 'data2dt.Columns.Add("Series5") 'data1dt.Columns.Add("Series6") 'data2Dim dr As DataRow'Add rows to the table which contains some random data for demonstrationDim rnd As New RandomDim i As DoubleFor i = 10 To 24 Step 0.2dr = dt.NewRow()dr("Date") = idr("Series1") = 3731 + rnd.Next(0, 1000)dr("Series2") = 4101 + rnd.Next(0, 1000)dr("Series3") = 3600 + rnd.Next(0, 1000)dr("Series4") = 4765 + rnd.Next(0, 1000)dr("Series5") = 3742 + rnd.Next(0, 1000)dr("Series6") = 4321 + rnd.Next(0, 1000)dt.Rows.Add(dr)NextCreateDataTable = dtEnd FunctionPrivate Sub ConvertChart(dt As DataTable)For Each dr As DataRow In dt.RowsDim s As Double = dr("Date")Chart1.Series("Series1").Points.AddXY(s, dr("Series1"))Chart1.Series("Series2").Points.AddXY(s, dr("Series2"))Chart1.Series("Series3").Points.AddXY(s, dr("Series3"))Chart1.Series("Series4").Points.AddXY(s, dr("Series4"))Chart1.Series("Series5").Points.AddXY(s, dr("Series5"))Chart1.Series("Series6").Points.AddXY(s, dr("Series6"))NextEnd Sub'/ <summary>'/ 设置mschart样式'/ </summary>Private Sub SetMSChartStyle()' 坐标轴设置Chart1.ChartAreas(0).AxisY.IsMarginVisible = FalseChart1.ChartAreas(0).AxisY.LabelStyle.Enabled = FalseChart1.ChartAreas(0).AxisX.IsMarginVisible = FalseChart1.ChartAreas(0).AxisX.LabelStyle.Enabled = False'设置当前X轴Label自动设置格式 = 关闭Chart1.ChartAreas(0).AxisX.LabelAutoFitStyle = DataVisualization.Charting.LabelAutoFitStyles.None''设置当前X轴Label的双行显示格式= 关闭,这个会影响到Y轴线条的显示Chart1.ChartAreas(0).AxisX.LabelStyle.IsStaggered = False''.设置当前X轴Label的显示间隔周期=1 (1个项目) (=2的意思: 间隔2个项目显示...以此类推)'Chart1.ChartAreas(0).AxisX.LabelStyle.Interval = 1'X 轴坐标最大最小值Chart1.ChartAreas(0).AxisX.Minimum = 0Chart1.ChartAreas(0).AxisX.Maximum = 24'X 轴坐标最大最小值Chart1.ChartAreas(0).AxisY.Minimum = 0Chart1.ChartAreas(0).AxisY.Maximum = 5000' 坐标轴刻度线不延长出来设置Chart1.ChartAreas(0).AxisX.MajorTickMark.Enabled = FalseChart1.ChartAreas(0).AxisY.MajorTickMark.Enabled = False'X 次要辅助线设置Chart1.ChartAreas(0).AxisX.MinorGrid.Enabled = True'X 次要辅助线间距Chart1.ChartAreas(0).AxisX.MinorGrid.Interval = 0.5'X 次要辅助线颜色Chart1.ChartAreas(0).AxisX.MinorGrid.LineColor = Color.LightGrayChart1.ChartAreas(0).AxisX.MinorGrid.LineDashStyle = DataVisualization.Charting.ChartDashStyle.Dash'Y 次要辅助线设置Chart1.ChartAreas(0).AxisY.MinorGrid.Enabled = True'Y 次要辅助线间距Chart1.ChartAreas(0).AxisY.MinorGrid.Interval = 500'Y 次要辅助线颜色Chart1.ChartAreas(0).AxisY.MinorGrid.LineColor = Color.LightGrayChart1.ChartAreas(0).AxisY.MinorGrid.LineDashStyle = DataVisualization.Charting.ChartDashStyle.Dash'X 主要辅助线设置Chart1.ChartAreas(0).AxisX.MajorGrid.Enabled = True'X 主要辅助线间距Chart1.ChartAreas(0).AxisX.MajorGrid.Interval = 5'X 主要辅助线颜色Chart1.ChartAreas(0).AxisX.MajorGrid.LineColor = Color.BlackChart1.ChartAreas(0).AxisX.MajorGrid.LineDashStyle = DataVisualization.Charting.ChartDashStyle.Solid'Y 主要辅助线设置Chart1.ChartAreas(0).AxisY.MajorGrid.Enabled = True'Y 主要辅助线间距Chart1.ChartAreas(0).AxisY.MajorGrid.Interval = 1000'Chart1.ChartAreas(0).AxisY.MajorGrid.IntervalOffset = 1000'Y 主要辅助线颜色Chart1.ChartAreas(0).AxisY.MajorGrid.LineColor = System.Drawing.Color.FromArgb(CType(CType(64, Byte), Integer), CType(CType(0, Byte), Integer), CType(CType(64, Byte), Integer))Chart1.ChartAreas(0).AxisY.MajorGrid.LineDashStyle = DataVisualization.Charting.ChartDashStyle.Solid'坐标主要辅助线刻度间距Chart1.ChartAreas(0).AxisX.Interval = 1Chart1.ChartAreas(0).AxisY.Interval = 1000'边框样式设置Chart1.ChartAreas(0).BorderColor = Color.BlackChart1.ChartAreas(0).BorderDashStyle = DataVisualization.Charting.ChartDashStyle.SolidChart1.ChartAreas(0).BorderWidth = 1'图例文字'Chart1.Series["Series"].LegendText = "当前"'图例位置、字体设置;坐标轴位置设定'Chart1.Legends[0].Position = new ElementPosition(10, 10, 88, 7)'Chart1.Legends[0].Font = new Font("宋体", 9)'Chart1.ChartAreas[0].InnerPlotPosition = new ElementPosition(1, 1, 1, 1)End SubPrivate Sub CmbYMax_SelectedValueChanged(sender As Object, e As EventArgs) Handles CmbYMax.SelectedValueChangedChart1.ChartAreas(0).AxisY.Maximum = CmbYMax.TextEnd SubPrivate Sub CmbYMin_SelectedValueChanged(sender As Object, e As EventArgs) Handles CmbYMin.SelectedValueChangedChart1.ChartAreas(0).AxisY.Minimum = CmbYMin.TextEnd SubPrivate Sub CmbXMin_SelectedValueChanged(sender As Object, e As EventArgs) Handles CmbXMin.SelectedValueChangedChart1.ChartAreas(0).AxisX.Minimum = Convert.ToDouble(CmbXMin.Text)End SubPrivate Sub CmbXMax_SelectedValueChanged(sender As Object, e As EventArgs) Handles CmbXMax.SelectedValueChangedChart1.ChartAreas(0).AxisX.Maximum = Convert.ToDouble(CmbXMax.Text)End SubPrivate Sub CheckBox_1_CheckedChanged(sender As Object, e As EventArgs) Handles CheckBox_1.CheckedChanged, CheckBox_6.CheckedChanged, CheckBox_5.CheckedChanged, CheckBox_4.CheckedChanged, CheckBox_3.CheckedChanged, CheckBox_2.CheckedChangedIf (sender.Name.Split("_").length = 2) ThenDim seriesName As String = "Series" + sender.Name.Split("_")(1)If sender.Checked = True ThenChart1.Series(seriesName).Enabled = TrueElseChart1.Series(seriesName).Enabled = FalseEnd IfEnd IfEnd Sub
End Class

https://www.cnblogs.com/zhao123/p/4889514.html

图表控件MsChart使用demo相关推荐

  1. 微软图表控件MsChart使用说明[转]

    微软图表控件MsChart使用说明 建立一个.NET3.5的Web项目,像使用普通控件一样拖放到要使用的Web界面即可.初步研究了一下,整个图形控件主要由以下几个部份组成: 1.Annotations ...

  2. 微软图表控件MsChart

    转自:http://tech.ddvip.com/2008-11/122640479791375.html 昨天在网上看到了微软发布了.NET 3.5框架下的图表控件,第一时间抓下来看了一下,发觉功能 ...

  3. asp.net微软图表控件MsChart

    前段时间,开发项目时,由于需要,需要将一些数据统计,并以图表形式显示.由于是asp.net,所以就找到了MsChart图表控件,还是挺方便实用的,分享一下. MsChart控件的主要组成如图所示 工具 ...

  4. java mschart_asp.net微软图表控件MsChart

    前段时间,开发项目时,由于需要,需要将一些数据统计,并以图表形式显示.由于是asp.net,所以就找到了MsChart图表控件,还是挺方便实用的,分享一下. MsChart控件的主要组成如图所示 工具 ...

  5. 图表控件--MSChart(2)

    碰到一个东西要用MSChart控件的,呵呵,这不就学了怎么用哈! void CMoreDMcode::OnCacluteDelta(int nRow) { m_Chart.SetRedraw(fals ...

  6. mschart走势图 vc_问题:MSChart.exe;结果:微软图表控件MsChart使用方法及各种插件下载地址...

    昨天在网上看到了微软发布了.NET 3.5框架下的图表控件,第一时间抓下来看了一下,发觉功能很强劲,基本上能想到的图表都可以使用它绘制出来,给图形统计和报表图形显示提供了很好的解决办法,同时支持Web ...

  7. java绘制图表控件_画图控件 Chart Control -Java架构师必看

    .NET3.5中中推出了图表控件,可以同时支持Web和WinForm两种方式,由于平时很少使用,一直网络 .NET3.5中中推出了图表控件,可以同时支持Web和WinForm两种方式,由于平时很少使用 ...

  8. 构建仪表、图表控件的绘制框架

    开发环境: VS2003 + Windows XP SP2测试环境: Windows XP SP2Demo截图 编写图形相关的控件需要完成两部分:1 绘制:2 与窗口类(泛指)集成使之成为控件.本文重 ...

  9. JQuery Highcharts图表控件使用说明

    JQuery Highcharts图表控件使用说明 Highcharts 官网:http://www.highcharts.com Highcharts 官网示例:http://www.highcha ...

  10. .net chart(图表)控件的使用

    .Net chart control for .net framework 3.5 文章类型:原创文章 摘要: 这个案例指在介绍微软这套免费又功能强大的图表控件Microsoft Chart Cont ...

最新文章

  1. 通俗理解tf.nn.conv2d() tf.nn.conv3d( )参数的含义 pytorhc 卷积
  2. 代码之美——Doom3源代码赏析2
  3. ISME:水库蓝藻水华发生和消退后浮游生物群落的动态变化
  4. python web框架django_Python Web应用框架 Django
  5. 转:Python: threading.local是全局变量但是它的值却在当前调用它的线程当中
  6. ESP32,使用gitee搭建 ESP-IDF 开发框架
  7. mysql中为表创建副本_如何为数据库建立一个副本?
  8. 【ThinkingInC++】66、pointer Stash的使用
  9. STM32 的RAM跑到哪里去了
  10. SQL2000升级到2005过程中的用户和登录名问题
  11. LaTeX标题、目录及段落的编辑(清晰实例)
  12. 使用 com.Lowagie.itext 导出html的内容到word
  13. 3D屏保:魔方2.0版本
  14. 嵌入式就业去哪?中国10大军工央企,1000+单位!史上最全!
  15. 惩罚函数法迭代过程的本质及其他最优化方法中的一些概念
  16. <C++>类的对象内存空间分配一点就通,this指针一学就会
  17. 《易中天中华史 - 第五卷 从春秋到战国》读书笔记
  18. 什么是乙二醇二乙酸酯(EGDA)?
  19. 斯坦福神经调控疗法(Stanford Neuromodulation Therapy, SNT)
  20. php判断图片有没有ps过,鉴别P图,如何鉴别图片是否被P过

热门文章

  1. 全国分省企业CEO任期、CEO学历数据(5W+)
  2. flash mx拖拽实例_Flash MX 2004动态串面板
  3. c语言- I Love GPLT
  4. VC 2008下安装与配置OpenCV2.1
  5. 盘点云计算的概念,分类和特点
  6. PSP3000高破解率傻瓜包!
  7. FeedingBottle3.2的下载网站
  8. 国科大学习资料--操作系统(杨力祥)--2016年思考题(含解答)
  9. itext7中文开发文档(二)
  10. 检测到非法调试,F12被管理员禁用解决方法