Winform & Devexpress Chart使用入门
一、Chart(Winform)
使用图表控件(chart)首先要理解图表区域(ChartArea)、XY轴(AxisX、AxisY)、数据点(Series)、标题(Title)、图例(Legend)这几个之间的层次关系。
图1:柱形图
/// <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使用入门的更多相关文章
- Winform 控件的入门级使用(一)
开始总结一下控件的基本用法,方便以后查阅. 一.Label Label 的使用频率很高,基本上也没有什么难度. #region Winform //label label.Text = "这 ...
- Winform DevExpress控件库(一) DevExpress控件库的安装与新建第一个DevExpress项目
前言:因为这段时间要接触到DevExpress控件库,而我本身甚至对winform的控件都了解甚少,所以处在学习中,写下博客主要是为了方便后期的回顾,当然也可以给一些新人第一次接触时做为学习的参考,以 ...
- C# winform DevExpress上传图片到数据库【转】
实现功能如下图: 注明:此文使用的是DevExpress控件,winform 原生控件也是一样使用方法. 1.点击选择图片按钮,功能为通过对话框选择要上传的文件,并将该文件在下面的PictureEdi ...
- WinForm DevExpress使用之ChartControl控件绘制图表一——基础
最近因为公司项目需要用到WinForm的DecExpress控件,在这里把一些使用方法总结一下. DevExpress中有一个专门用来绘制图表的插件ChartControl,可以绘制折线图.饼状图.柱 ...
- Winform中Chart图表的简单使用
在常见的一些数据采集的系统中, 都少不了一个就是, 数据分析, 无论是报表的形式, 还是图形的形式. 他都是可以迅速的展现一个数据趋势的实现方法, 而今天, 就是简单介绍一下, 微软的工具库自带的 C ...
- Winform DevExpress控件库(二) 使用SplashScreenManager控件定制程序加载页面
SplashScreenManager控件:主要作用是显示在进行耗时操作时的等待界面: 位于 工具箱 -> Navigation & Layout(导航栏与布局类控件) 目录下: 在工具 ...
- winform devexpress 用法汇总
废话不多说先上图 1.封装分页控件 qrcodeOnPage1.SearchData(gridControl2, IDataPage, sWhere, "", "tb_o ...
- [转]Chart.js入门教程
Chart.js是一个简单.面向对象.为设计者和开发者准备的图表绘制工具库. 相信大部分人都一样,看到一大筐用文本或者表格形式呈现的数据就头疼.因为这种呈现方式也太无聊了吧...而且这对于我们处理原始 ...
- [WinForm]Dundas Chart控件学习(附源码)
1.Dundas公司简介 加拿大的一家公司,专业做图表展现的,很牛,据说现在被Microsoft收购了.官网地址:http://www.dundas.com/ 2.Chart基本要素 3.最简单的柱状 ...
随机推荐
- 线上平滑升级nginx1.12
.下载相关包,需要和之前用到的依赖包保持一致 wget http://nginx.org/download/nginx-1.12.2.tar.gz wget https://bitbucket.org ...
- JavaScript及jQuery中的各种宽高属性图解
文/poetries(简书作者)原文链接:http://www.jianshu.com/p/60332df38393 著作权归作者所有,转载请联系作者获得授权, 并标注“简书作者”. 作者声明:本 ...
- 缓存(Cache)
l如果每次进入页面的时候都查询数据库生成页面内容的话,如果访问量非常大,则网站性能会非常差.而如果只有第一次访问的时候才查询数据库生成页面内容,以后都直接输出内容,则能提高系统性能.这样无论有多少人访 ...
- CentOS 7.x上gitlab搭建教程(https可用,邮件可用)
目录 知识要求 搭建感想 搭建过程 参考 知识要求: nginx基础知识 搭建感想 注:以下是我搭建gitlab时的思考,需要nginx的基础知识,Docker的基础知识才容易理解,与下面的搭建过程是 ...
- 正确使用volatile场景--状态标志
同步机制:volatile 特点:可见性:不具备原子性 每个线程有自己单独的内存:如果线程1和线程2公用一个变量name:如果两个线程并发进行,并且需要访问变量name:如果这个变量具有了可见性,线程 ...
- Extjs入门-grid
function rowdblclickFn(grid, rowIndex, e){//双击事件 var row = grid.store.getById(grid.stor ...
- 安卓和 java 学习笔记
1.访问权限为 private 的成员变量或方法,需要执行setAccessible() 方法,并将入口参数设置为 true; 否则不允许访问. 2.为了保证线程的安全,可以使用同步块 synchro ...
- Node.js 蚕食计划(二)—— 使用 http 模块搭建 Web 服务器
Node.js 开发的目的就是为了用 JavaScript 编写 Web 服务器程序 这次就来介绍用 http 模块搭建服务器 一.项目构建 每个 Node 程序都可以看作一个模块,而每个模块都应该有 ...
- java基础知识整理
java基础入门知识(转载请注明出处.) 1.JVM.JRE和JDK的区别. (1)JVM(Java Virtual Machine):java虚拟机,用于保证java跨平台的特性,java语言是跨平 ...
- css实现平行四边形、菱形图片效果
一.平行四边形 1. 使用两个元素实现 html <a class="button"> <div>click me</div> </a&g ...