一、Chart(Winform)

使用图表控件(chart)首先要理解图表区域(ChartArea)、XY轴(AxisX、AxisY)、数据点(Series)、标题(Title)、图例(Legend)这几个之间的层次关系。

图1:柱形图

从图1可以中内容,可以对Chart控件的组成有了一个简单的了解。
 
1.图表区域(ChartArea)
从图1中可以看出数据点、XY轴都是属于ChartArea的,这里是主要数据展示的区域。
 
2.XY轴(AxisX、AxisY)
XY轴的作用不用多说,具体的设置可以参考Demo中的代码。
 
3.数据点(Series)
圆饼图、散点图、柱形图等等都是由Series的属性设置的。
 
4.标题(Title)、图例(Legend)
这个作用不多说了,主要是进行一些相关属性的设置。
 
上点代码:

         /// <summary>
/// 饼图
/// </summary>
private void ChartPie()
{
//ChartArea
ChartArea chartArea = new ChartArea()
{
Name = "PieArea",
BorderWidth = ,
BorderDashStyle = ChartDashStyle.NotSet,
};
chartBar.ChartAreas.Clear();
chartBar.ChartAreas.Add(chartArea);
//Series
Series seriesBookA = new Series()
{
ChartArea = "PieArea",
Name = "书籍A销量",
Color = Color.Red,
Legend = "LegendBook",
Tag = "BookASaleCount",
ChartType = SeriesChartType.Pie,
XAxisType = AxisType.Primary,
XValueType = ChartValueType.DateTime,
IsValueShownAsLabel = true,
Label = "#VALY(#PERCENT{P0})",
};
chartBar.Series.Clear();
chartBar.Series.Add(seriesBookA);
//Point
double[] value = { };
DataPoint dataPoint = new DataPoint()
{
Name = "书籍A销售量",
Color = Color.Red,
YValues = value,
LegendText = "书籍A销售量:" + value[],
};
if (chartBar.Series.Count > )
{
chartBar.Series[].Points.Clear();
chartBar.Series[].Points.Add(dataPoint);
value = new double[] { };
chartBar.Series[].Points.Add(new DataPoint()
{
Name = "书籍B销售量",
Color = Color.Blue,
YValues = value,
LegendText = "书籍B销售量:" + value[],
});
value = new double[] { };
chartBar.Series[].Points.Add(new DataPoint()
{
Name = "书籍C销售量",
Color = Color.Pink,
YValues = value,
LegendText = "书籍C销售量:" + value[],
});
}
//Title
Title mainTitle = new Title()
{
Name = "MainTitle",
Text = "书籍销量",
Font = new Font("微软雅黑", , FontStyle.Regular, GraphicsUnit.Pixel),
ForeColor = Color.Blue,
Docking = Docking.Top,
IsDockedInsideChartArea = true,
};
chartBar.Titles.Clear();
chartBar.Titles.Add(mainTitle);
//Legend
Legend legend = new Legend()
{
Name = "LegendBook",
LegendStyle = LegendStyle.Table,
Docking = Docking.Bottom,
};
chartBar.Legends.Clear();
chartBar.Legends.Add(legend);
}

二、ChartControl(Devexpress)

Dev的ChartControl用法和 Winform的类似,但是更为灵活

三、问题及解决方法

1.ChartControl(dev)饼图label重叠问题

以下属性设置可解决此问题

pieSeriesLabel1.Position = DevExpress.XtraCharts.PieSeriesLabelPosition.TwoColumns;
pieSeriesLabel1.ResolveOverlappingMode = DevExpress.XtraCharts.ResolveOverlappingMode.Default;

具体代码可以单击下载。

Winform & Devexpress Chart使用入门的更多相关文章

  1. Winform 控件的入门级使用(一)

    开始总结一下控件的基本用法,方便以后查阅. 一.Label Label 的使用频率很高,基本上也没有什么难度. #region Winform //label label.Text = "这 ...

  2. Winform DevExpress控件库(一) DevExpress控件库的安装与新建第一个DevExpress项目

    前言:因为这段时间要接触到DevExpress控件库,而我本身甚至对winform的控件都了解甚少,所以处在学习中,写下博客主要是为了方便后期的回顾,当然也可以给一些新人第一次接触时做为学习的参考,以 ...

  3. C# winform DevExpress上传图片到数据库【转】

    实现功能如下图: 注明:此文使用的是DevExpress控件,winform 原生控件也是一样使用方法. 1.点击选择图片按钮,功能为通过对话框选择要上传的文件,并将该文件在下面的PictureEdi ...

  4. WinForm DevExpress使用之ChartControl控件绘制图表一——基础

    最近因为公司项目需要用到WinForm的DecExpress控件,在这里把一些使用方法总结一下. DevExpress中有一个专门用来绘制图表的插件ChartControl,可以绘制折线图.饼状图.柱 ...

  5. Winform中Chart图表的简单使用

    在常见的一些数据采集的系统中, 都少不了一个就是, 数据分析, 无论是报表的形式, 还是图形的形式. 他都是可以迅速的展现一个数据趋势的实现方法, 而今天, 就是简单介绍一下, 微软的工具库自带的 C ...

  6. Winform DevExpress控件库(二) 使用SplashScreenManager控件定制程序加载页面

    SplashScreenManager控件:主要作用是显示在进行耗时操作时的等待界面: 位于 工具箱 -> Navigation & Layout(导航栏与布局类控件) 目录下: 在工具 ...

  7. winform devexpress 用法汇总

    废话不多说先上图 1.封装分页控件 qrcodeOnPage1.SearchData(gridControl2, IDataPage, sWhere, "", "tb_o ...

  8. [转]Chart.js入门教程

    Chart.js是一个简单.面向对象.为设计者和开发者准备的图表绘制工具库. 相信大部分人都一样,看到一大筐用文本或者表格形式呈现的数据就头疼.因为这种呈现方式也太无聊了吧...而且这对于我们处理原始 ...

  9. [WinForm]Dundas Chart控件学习(附源码)

    1.Dundas公司简介 加拿大的一家公司,专业做图表展现的,很牛,据说现在被Microsoft收购了.官网地址:http://www.dundas.com/ 2.Chart基本要素 3.最简单的柱状 ...

随机推荐

  1. 刚实习的自己-php

    刚毕业的大学生,可能你的理论知识很丰富,但是你要清楚的是:你缺少实战经验.            正式实习的时候是在下午,老板给了我一个他们几年前开发好的系统(cms),这是一个展示型的网站,也就是发 ...

  2. linux防火墙之 ufw

    Usage: ufw COMMAND Commands: enable enables the firewall 开启ufw防火墙 disable disables the firewall 禁用防火 ...

  3. 完美解决浮动IE6 7中的兼容性BUG问题

    想要创建出漂亮的网页设计,除了要认真学习每一个html和CSS代码之外,不可能不去了解一下臭名昭著的IE6和更早的那些IE浏览器的坏脾气,因为你本来写出的规规矩矩的代码,漂亮的设计就此就要完成了,却发 ...

  4. (class file version 53.0), Java Runtime versions up to 52.0错误的解决方法

    遇到这个错误是在Apache Tomcat上部署应用程序的时候遇到的,具体的错误描述是: java.lang.UnsupportedClassVersionError: HelloWorld has ...

  5. 基于2-channel network的图片相似度判别

    一.相关理论 本篇博文主要讲解2015年CVPR的一篇关于图像相似度计算的文章:<Learning to Compare Image Patches via Convolutional Neur ...

  6. Linux入门篇(二)——文件

    这一系列的Linux入门都是本人在<鸟哥的Linux私房菜>的基础上总结的基本内容,主要是记录下自己的学习过程,也方便大家简要的了解 Linux Distribution是Ubuntu而不 ...

  7. MySQL事务-ROLLBACK,COMMIT用法详解

    使用ROLLBACK 既然我们已经知道了什么是事务处理,下面讨论事务处理的管理中所涉及的问题. 管理事务处理的关键在于将SQL语句组分解为逻辑块,并明确规定数据何时应该回退,何时不应该回退. MySQ ...

  8. linux下分割文件

    split -l 115 XSMD.txt -d -a 2 XSMD.txt._   注:将一个文件XSMD.txt分割成两个文件,每个大小115

  9. 推荐!手把手教你使用Git(转载)

    转载地址http://blog.jobbole.com/78960/,涂根华的博客. Git基本常用命令如下: mkdir:         XX (创建一个空目录 XX指目录名) pwd:      ...

  10. mysql之其他

    一 IDE工具介绍 下载链接:https://pan.baidu.com/s/1bpo5mqj 掌握: 1. 测试+链接数据库 2. 新建库 3. 新建表,新增字段+类型+约束 4. 设计表:外键 5 ...