DevExpress.XtraCharts.chartControl
private Dictionary<string, double> chartPieDataDic = new Dictionary<string, double>();
private Dictionary<string, double> chartBarDataDic = new Dictionary<string, double>();
private void showPie()
{
ChartTitle title = new ChartTitle();
title.Text = "全省话务分析饼图-话务类型分布";
chartControl1.Titles.Clear();
chartControl1.Titles.Add(title);
Series series1 = new Series("话务类型", ViewType.Pie);
((PiePointOptions)series1.PointOptions).PointView = PointView.ArgumentAndValues;
foreach (KeyValuePair<string, double> keyvalue in chartPieDataDic)
{
series1.Points.Add(new SeriesPoint(keyvalue.Key, new double[] { keyvalue.Value }));
}
chartControl1.Series.Clear();
chartControl1.Series.Add(series1);
}
private void InitPieChartData()
{
try
{
chartPieDataDic.Add("大连", 0.2);
chartPieDataDic.Add("沈阳", 0.26);
chartPieDataDic.Add("锦州", 0.15);
chartPieDataDic.Add("盘锦", 0.15);
chartPieDataDic.Add("本溪", 0.1);
chartPieDataDic.Add("抚顺", 0.12);
chartPieDataDic.Add("营口", 0.02);
}
catch { }
}
private void InitBarChartData()
{
try
{
chartBarDataDic.Add("2001", 0.05);
chartBarDataDic.Add("2002", 0.02);
chartBarDataDic.Add("2003", 0.08);
chartBarDataDic.Add("2004", 0.15);
chartBarDataDic.Add("2005", 0.1);
chartBarDataDic.Add("2006", 0.3);
chartBarDataDic.Add("2007", 0.2);
chartBarDataDic.Add("2008", 0.1);
}
catch { }
}
private void comboBox1_SelectedIndexChanged(object sender, EventArgs e)
{
if (comboBox1.Text.IndexOf("饼图") != -1)
{
showPie();
}
else if (comboBox1.Text.IndexOf("柱图") != -1)
{
showBar();
}
else if (comboBox1.Text.IndexOf("线图") != -1)
{
showLine();
}
else if (comboBox1.Text.IndexOf("点图") != -1)
{
showPoint();
}
else if (comboBox1.Text.IndexOf("ViewType") != -1)
{
BindData(ViewType.Line);
}
}
private void showBar()
{
try
{
ChartTitle title = new ChartTitle();
title.Text = "市网元容量增长率统计分析柱图";
chartControl1.Titles.Clear();
chartControl1.Titles.Add(title);
Series series2 = new Series("大连", ViewType.Bar);
Series series3 = new Series("沈阳", ViewType.Bar);
Series series4 = new Series("本溪", ViewType.Bar);
foreach (KeyValuePair<string, double> kvp in chartBarDataDic)
{
series2.Points.Add(new SeriesPoint(kvp.Key, new double[] { kvp.Value }));
series3.Points.Add(new SeriesPoint(kvp.Key, new double[] { kvp.Value + 0.08 }));
series4.Points.Add(new SeriesPoint(kvp.Key, new double[] { kvp.Value + 0.02 }));
}
chartControl1.Series.Clear();
chartControl1.Series.Add(series2);
chartControl1.Series.Add(series3);
chartControl1.Series.Add(series4);
chartControl1.Legend.Visible = true; // 显示标签(旁边的标注哪个颜色代表哪个城市)
}
catch { }
}
private void showLine()
{
ChartTitle title = new ChartTitle();
title.Text = "线图";
chartControl1.Titles.Clear();
chartControl1.Titles.Add(title);
Series series1 = new Series("辽宁", ViewType.Line);
series1.ArgumentScaleType = ScaleType.Numerical;
series1.Points.Add(new SeriesPoint(1, new double[] { 10 }));
series1.Points.Add(new SeriesPoint(2, new double[] { 12 }));
series1.Points.Add(new SeriesPoint(3, new double[] { 14 }));
series1.Points.Add(new SeriesPoint(4, new double[] { 17 }));
series1.Points.Add(new SeriesPoint(5, new double[] { 21 }));
series1.Points.Add(new SeriesPoint(6, new double[] { 26 }));
series1.Points.Add(new SeriesPoint(7, new double[] { 29 }));
series1.Points.Add(new SeriesPoint(8, new double[] { 30 }));
((PointSeriesView)series1.View).PointMarkerOptions.Kind = MarkerKind.Triangle;
Series series2 = new Series("山东", ViewType.Line);
series2.ArgumentScaleType = ScaleType.Numerical; //这句话必须有,否则点画不出来.
((LineSeriesView)series2.View).LineStyle.DashStyle = DashStyle.DashDotDot;
series2.Points.Add(new SeriesPoint(1, new double[] { 4 }));
series2.Points.Add(new SeriesPoint(2, new double[] { 14 }));
series2.Points.Add(new SeriesPoint(3, new double[] { 17 }));
series2.Points.Add(new SeriesPoint(4, new double[] { 22 }));
series2.Points.Add(new SeriesPoint(5, new double[] { 20 }));
series2.Points.Add(new SeriesPoint(6, new double[] { 15 }));
series2.Points.Add(new SeriesPoint(7, new double[] { 18 }));
series2.Points.Add(new SeriesPoint(8, new double[] { 11 }));
((PointSeriesView)series2.View).PointMarkerOptions.Kind = MarkerKind.Cross;
chartControl1.Series.Clear();
chartControl1.Series.Add(series1);
chartControl1.Series.Add(series2);
chartControl1.Legend.Visible = true;
}
private void showPoint()
{
ChartTitle title = new ChartTitle();
title.Text = "点图";
chartControl1.Titles.Clear();
chartControl1.Titles.Add(title);
Series series1 = new Series("上线人数", ViewType.Point);
series1.ArgumentScaleType = ScaleType.Numerical;
series1.Points.Add(new SeriesPoint(1, new double[] { 20 }));
series1.Points.Add(new SeriesPoint(2, new double[] { 12 }));
series1.Points.Add(new SeriesPoint(3, new double[] { 11 }));
series1.Points.Add(new SeriesPoint(4, new double[] { 17 }));
series1.Points.Add(new SeriesPoint(5, new double[] { 21 }));
series1.Points.Add(new SeriesPoint(6, new double[] { 21 }));
series1.Points.Add(new SeriesPoint(7, new double[] { 29 }));
series1.Points.Add(new SeriesPoint(8, new double[] { 30 }));
((PointSeriesView)series1.View).PointMarkerOptions.Kind = MarkerKind.Triangle;
Series series2 = new Series("下线人数", ViewType.Point);
series2.ArgumentScaleType = ScaleType.Numerical; //这句话必须有,否则点画不出来.
series2.Points.Add(new SeriesPoint(1, new double[] { 4 }));
series2.Points.Add(new SeriesPoint(2, new double[] { 14 }));
series2.Points.Add(new SeriesPoint(3, new double[] { 17 }));
series2.Points.Add(new SeriesPoint(4, new double[] { 22 }));
series2.Points.Add(new SeriesPoint(5, new double[] { 20 }));
series2.Points.Add(new SeriesPoint(6, new double[] { 15 }));
series2.Points.Add(new SeriesPoint(7, new double[] { 18 }));
series2.Points.Add(new SeriesPoint(8, new double[] { 11 }));
((PointSeriesView)series2.View).PointMarkerOptions.Kind = MarkerKind.Cross;
chartControl1.Series.Clear();
chartControl1.Series.Add(series1);
chartControl1.Series.Add(series2);
chartControl1.Legend.Visible = true;
}
DevExpress.XtraCharts.chartControl的更多相关文章
- 张奎师弟参与devexpress chartControl绘图--解决了devexpress的chartControl控件不能添加系列的问题
using DevExpress.XtraCharts; using System; using System.Collections.Generic; using System.ComponentM ...
- DevExpress中chartControl中实现统计图功能
public partial class Form1 : DevExpress.XtraEditors.XtraForm { public Form1() { InitializeComponent( ...
- DevExpress之ChartControl实现时间轴实例 z
using System; using System.Data; using System.Windows.Forms; using DevExpress.XtraCharts; namespace ...
- DevExpress之ChartControl用法
DevExpress中的ChartControl顾名思义就是数据基于图表展示,其关键在于Series上的处理. using System; using System.Drawing; using De ...
- 【原】为DevExpress的ChartControl添加Y轴控制 和 GridControl中指定列添加超级链接
一.控制ChartControl的Y轴范围 使用Devexpress中的CharControl控件,需要控制AxisY轴的显示范围,需要使用该控件的BoundDataChanged事件,具体代码如下: ...
- devexpress中用ChartControl生成柱状图
在界面中拖入一个ChartControl控件,然后添加一个simplebutton控件.在simplebutton控件的click事件中加入如下代码: private void button1_Cli ...
- DevExpress中ChartControl柱状图(Bar)用法
我的数据 代码如下: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 chartControl1.Series.Clear(); ...
- devexpress 之 ChartControl
\}5#~mV#cr(/k1yIZ7.Lg
- DevExpress.XtraCharts曲线上的点所对应的坐标值
private void chartControl_ObjectSelected(object sender, HotTrackEventArgs e) { e.Cancel = false; XYD ...
随机推荐
- Java List 汉字进行排序
Comparator<Person> cmp = new Comparator<Person>() { public int compare(Person o1, Person ...
- JSP指令 include 和forward
包括指令:include 静态包括 <%@include file="要包括的文件路径" %> 先将所包括 ...
- 最新首发Eclipse+CDT+android-ndk写纯c++安卓应用(附openGL Es)
首先下载eclipse和cdt.我的版本依次是:Version: Indigo Service Release 2和Version: 1.0.0.201202111925,再下载windows的ndk ...
- android卸载反馈实现
博客原地址:http://blog.csdn.net/wang_shaner/article/details/41543787 实现原理 fork分叉函数 fork分叉(分裂)函数可以创建一个新进程, ...
- 【部分枚举】【3-21个人赛】ProblemH
Problem H Time Limit : 3000/1000ms (Java/Other) Memory Limit : 65535/32768K (Java/Other) Total Sub ...
- SQL————高级查询
高级查询 --连接查询 select * from 表1,表2 ————形成笛卡尔积 select * from 表1,表2 where 表1.主键=表2.外键 ————主外键位置可以互换 --jo ...
- c#操作sqlite
一.添加选中dll引用如下图 二.下载一个sqlite建表建库工具sqlitedatabasebrowser如下图 三.使用sqlitedatabasebrowser建库建表 四.插入表数据如下图 四 ...
- UI事件之unload、resize和scroll
unload事件 当页面卸载或用户从当前页面换到其他页面上时,会在window上触发unload事件.根据DOM2级规范规定,unload应该在body上触发,但所有浏览器都实现了在window上触发 ...
- java Timer 使用小结
Java自带的java.util.Timer类,通过调度一个java.util.TimerTask任务.这种方式可以让程序按照某一个频度执行,但不能指定时间运行.用的较少. 任务的调用通过起的子线程进 ...
- 将Eclipse代码导入到Android Studio的两种方式
转: http://www.jcodecraeer.com/a/anzhuokaifa/androidkaifa/2015/0104/2259.html 说到使用Android Studio,除了新建 ...