Winform Chart
Chart图表解释说明:


第一步:使用VS创建Winform项目;
第二步:工具箱中拖入Chart控件;
第三步:所有控件拖入其他控件如下图所示:

using System;
using System.Collections.Generic;
using System.Drawing;
using System.Windows.Forms;
using System.Windows.Forms.DataVisualization.Charting; namespace ZB.PISS.StatisticsSys
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
} private void Form1_Load(object sender, EventArgs e)
{
List<int> x = new List<int> { , , , , }; List<int> a = new List<int> { , , , , };
List<int> b = new List<int> { , , , , };
List<int> c = new List<int> { , , , , };
var dd = chartDemo.Series; this.chartDemo.Series["name1"].Points.DataBindXY(x, a);
this.chartDemo.Series["name2"].Points.DataBindXY(x, b);
this.chartDemo.Series["name3"].Points.DataBindXY(x, c);
Winfrom chart DataBindXY X内容显示不全解决方法如下:
chartImage.ChartAreas["ChartArea1"].AxisX.LabelAutoFitStyle = LabelAutoFitStyles.None;
chartImage.ChartAreas["ChartArea1"].AxisX.LabelStyle.Interval = 1;
chartImage.ChartAreas["ChartArea1"].AxisX.LabelStyle.IsStaggered = false;
//Chart Title
this.chartDemo.Titles.Add("人员信息统计").Alignment = ContentAlignment.MiddleCenter;
Color[] arr = chartDemo.PaletteCustomColors;
this.cmbPattern.DataSource = PatternList();
this.cmbType.DataSource = SeriesTypeList(); //Axis Title
this.chartDemo.ChartAreas[].AxisX.Title = "月份信息";
this.chartDemo.ChartAreas[].AxisY.Title = "数量信息"; //Lable
// #VALX 显示当前图例的X轴的对应文本(或数据)
//#VAL, #VALY, 显示当前图例的Y轴的对应文本(或数据)
//#VALY2, #VALY3, 显示当前图例的辅助Y轴的对应文本(或数据)
//#SER: 显示当前图例的名称
//#LABEL 显示当前图例的标签文本
//#INDEX 显示当前图例的索引
//#PERCENT 显示当前图例的所占的百分比
//#TOTAL 总数量
//#LEGENDTEXT 图例文本
this.chartDemo.Series[].Label = "#VAL";
this.chartDemo.Series[].Label = "#VAL";
this.chartDemo.Series[].Label = "#VAL"; //Marker
this.chartDemo.Series[].MarkerSize = ;
this.chartDemo.Series[].MarkerSize = ;
this.chartDemo.Series[].MarkerSize = ;
this.chartDemo.Series[].MarkerStyle = MarkerStyle.Circle;
this.chartDemo.Series[].MarkerStyle = MarkerStyle.Square;
this.chartDemo.Series[].MarkerStyle = MarkerStyle.Diamond; } #region ChartType
public List<string> SeriesTypeList()
{
List<string> list = new List<string>();
foreach (string item in Enum.GetNames(typeof(SeriesChartType)))
{
list.Add(item);
}
return list;
} private void cmbType_SelectedValueChanged(object sender, EventArgs e)
{
try
{
SeriesChartType type = (SeriesChartType)Enum.Parse(typeof(SeriesChartType),
this.cmbType.Text); this.chartDemo.Series["name1"].ChartType = type;
this.chartDemo.Series["name2"].ChartType = type;
this.chartDemo.Series["name3"].ChartType = type;
}
catch
{
return;
}
} #endregion #region Pattern
public List<string> PatternList()
{
List<string> list = new List<string>();
foreach (string item in Enum.GetNames(typeof(ChartColorPalette)))
{
list.Add(item);
}
return list;
} private void cmbPattern_SelectedValueChanged(object sender, EventArgs e)
{
ChartColorPalette palette = (ChartColorPalette)Enum.Parse(typeof(ChartColorPalette),
this.cmbPattern.Text);
this.chartDemo.Palette = palette;
} #endregion }
}
运行效果如下:

资源源码下载地址:http://download.csdn.net/my Winfrom Chart
补充:
一:实现3D效果
private void comboBox1_SelectedValueChanged(object sender, EventArgs e)
{
if (this.comboBox1.Text.Equals("3D"))
{
//this.chartDemo.ChartAreas[0].Area3DStyle.Enable3D = true;
//开启三维模式的原因是为了避免标签重叠
this.chartDemo.ChartAreas["ChartArea1"].Area3DStyle.Enable3D = true;//开启三维模式;PointDepth:厚度BorderWidth:边框宽
this.chartDemo.ChartAreas["ChartArea1"].Area3DStyle.Rotation = ;//起始角度
this.chartDemo.ChartAreas["ChartArea1"].Area3DStyle.Inclination = ;//倾斜度(0~90)
this.chartDemo.ChartAreas["ChartArea1"].Area3DStyle.LightStyle = LightStyle.Realistic;//表面光泽度
this.chartDemo.ChartAreas["ChartArea1"].AxisX.Interval = ; //决定x轴显示文本的间隔,1为强制每个柱状体都显示,3则间隔3个显示
this.chartDemo.ChartAreas["ChartArea1"].AxisX.LabelStyle.Font = new Font("宋体", , FontStyle.Regular);
this.chartDemo.ChartAreas["ChartArea1"].AxisX.MajorGrid.Enabled = false;
}
else
{
this.chartDemo.ChartAreas["ChartArea1"].Area3DStyle.Enable3D = false;
}
}
Winform Chart的更多相关文章
- c# winform Chart Pie 中若X轴数据为字符串时,#VALX取值为0
https://q.cnblogs.com/q/83848/ 在winform程序中用自带的Chart进行画图表时,若画饼图,其中X轴数据为字符串,这时候如果想设置Label值的格式为#VALX:#V ...
- c# Winform Chart入门
额外参考链接:http://www.cnblogs.com/greenerycn/archive/2008/10/27/microsoft-chart.html winform 仪表盘相关下载链接:/ ...
- winform Chart控件 获取鼠标处坐标值方法
Chart控件本身功能强大,应用广泛,因此其属性.方法也很多.此处介绍在很多应用中需要查看鼠标位置处坐标值的一些方法 1,调用Chart事件 GetToolTip 利用ToolTipEventArg ...
- WPF 使用WinForm Chart控件
第一步: 页面 首先引用命名空间 xmlns:wfi="clr-namespace:System.Windows.Forms.Integration;assembly=WindowsFor ...
- 使用WinForm Chart控件 制作饼装,柱状,折线图
http://blog.csdn.net/dream2050csdn/article/details/53510340 chart控件的属性很多,主要用到Chart控件图表区域的属性有五个属性 1.A ...
- 【207】WinForm Chart类
目录: 在工具箱中找到 Chart 控件并使用 设置 Chart 属性 代码中设置属性 属性中设置属性 Chart 类说明 ChartAreas ChartAreaCollection 类 Chart ...
- Winform Chart 控件读取datatable后显示图表
private void Button2_Click(object sender, EventArgs e) { DataTable table = new DataTable(); this.cha ...
- C# chart,有关如何在鼠标移动到Series上时显示节点及数据 (有待继续更新)
一.效果与思路 效果: 解决方案1 用chart的mousemove时间,实时跟踪鼠标最近的X轴的位置,然后把cursorX设置到那个位置上,让用户知道我是选的那一个X的值,同时用tooltip显示该 ...
- Winform & Devexpress Chart使用入门
一.Chart(Winform) 使用图表控件(chart)首先要理解图表区域(ChartArea).XY轴(AxisX.AxisY).数据点(Series).标题(Title).图例(Legend) ...
随机推荐
- C++指针易错点梳理
1 指针定义 指针是一个变量:指针的值是另一个变量的地址.变量的声明 type *var-name; var-name 是指针变量的名称.星号是用来指定一个变量var-name是指针变量. int * ...
- [LeetCode&Python] Problem 830. Positions of Large Groups
In a string S of lowercase letters, these letters form consecutive groups of the same character. For ...
- C++学习(十九)(C语言部分)之 指针3
复习1.一级指针 int*p 指向int的指针 赋值 int x; p=&x;// *p=2; 指针指向的谁 解引用之后就是谁2.内存四区 堆区 需要自己手动申请内存 自己释放 (malloc ...
- [小A与最大子段和][斜率优化dp+二分]
链接:https://ac.nowcoder.com/acm/contest/545/A来源:牛客网题目描述 小A在网上看到了 "最大子段和" 问题的解法.第二天,小A向小B讲解了 ...
- set 基础知识
#include <iostream> #include <set> using namespace std; int main() { set<int> s; s ...
- 《DSP using MATLAB》Problem 7.1
只有春节那么几天才能和家人团聚,看着爸爸妈妈一年比一年老,自己还是一无所有,照顾好自己尚且惭愧,真是悲从中来,又能怎么办呢, 唯有奋发努力,时不我待,多想想怎么赚钱,加油. 代码: function ...
- protobuf GetExtension
get extention values from proto file value, err := proto.GetExtension(imp, openrtb.E_Imp) if err != ...
- skipper http router 工具
skipper 是一个http router && 反向代理服务组件,同时支持类似kubernetes 模型的ingress,由zalando 公司的团队开发 并开源,从功能上来看,可 ...
- System.Windows.Forms.Timer、System.Timers.Timer、System.Threading.Timer的 区别和用法
System.Windows.Forms.Timer执行的时候,如果你在过程中间加一个sleep整个的界面就死掉了,但是另外两个没有这个情况,System.Timers.Timer.System.Th ...
- PowerDesigner学习 ---- 系列文章
一.PowerDesigner概述(系统分析与建模) 二.项目和框架矩阵 三.企业架构模型 四.业务处理模型 五.概念数据模型(CDM生成LDM,PDM和OOM) 六.物理数据模型(PDM逆向工程) ...