devexpress中用ChartControl生成柱状图
在界面中拖入一个ChartControl控件,然后添加一个simplebutton控件。在simplebutton控件的click事件中加入如下代码:
private void button1_Click(object sender, EventArgs e)
{
//数据源
chartControl1.DataSource = CreateChartData();
//数据成员
chartControl1.SeriesDataMember = "DWMC";
//下面显示
chartControl1.SeriesTemplate.ArgumentDataMember = "DWMC";
chartControl1.SeriesTemplate.ValueDataMembers.AddRange(new string[] {"Value"});
chartControl1.SeriesTemplate.View = new StackedBarSeriesView();
chartControl1.Titles.Add(new ChartTitle());
chartControl1.Titles[0].Text = "道路类型统计图";
}
private DataTable CreateChartData()
{
IWorkspaceFactory pWorkspaceFactory = new ShapefileWorkspaceFactory();//此处打开的shp 格式的数据
//IWorkspaceFactory pWorkspaceFactory = new OleDbFactory();
IWorkspace pWorkspace = pWorkspaceFactory.OpenFromFile(@"D:\我的文档\道路边线", 0);
IFeatureWorkspace pFeatureWorkspace = pWorkspace as IFeatureWorkspace;
int ZCityRoadNum = 0, CCityRoadNum = 0, NRoadNum = 0, DXBGNum = 0, NullNum = 0, CDNum = 0;//城市道路(主干道)、城市道路(次干道)、内部道路、单线标准轨、空、车档
if (pFeatureWorkspace != null)
{
IFeatureClass pFeatureClass = pFeatureWorkspace.OpenFeatureClass("道路边线");
IQueryFilter filter = new QueryFilterClass();
filter.WhereClause = null;
IFeatureCursor pFeatureCursor = pFeatureClass.Search(filter,false);
IFeature pFeature = pFeatureCursor.NextFeature();
string value = null;
while (pFeature != null)
{
int index = pFeatureClass.FindField("DWMC");
if (index != -1)
{
value = pFeature.get_Value(index).ToString();
}
if (value.Trim() == "城市道路(主干道)")
{
ZCityRoadNum++;
}
if (value.Trim() == "城市道路(次干道)")
{
CCityRoadNum++;
}
if (value.Trim() == "内部道路")
{
NRoadNum++;
}
if (value.Trim() == "单线标准轨")
{
DXBGNum++;
}
if (value.Trim() == "车挡")
{
CDNum++;
}
else
{
NullNum++;
}
pFeature = pFeatureCursor.NextFeature();
}
}
//建一个空表
DataTable table = new DataTable("DLBX_DWMC");
//列
table.Columns.Add("DWMC",typeof(string));
table.Columns.Add("Value",typeof(Decimal));
//行
table.Rows.Add(new object[]{"城市主干道",ZCityRoadNum});
table.Rows.Add(new object[]{"城市次干道",CCityRoadNum});
table.Rows.Add(new object[]{"内部道路", NRoadNum });
table.Rows.Add(new object[]{"单线标准轨",DXBGNum });
table.Rows.Add(new object[]{"车挡",CDNum});
table.Rows.Add(new object[]{"无",NullNum});
return table;
}
}
devexpress中用ChartControl生成柱状图的更多相关文章
- highCharts+Struts2生成柱状图
这篇文章主要结合Struts2+json+Highcharts实现动态数据的显示.为了节省时间,就不写数据库了.在action中用一个集合来模拟从数据库取到的数据.模拟数据为三个学生在不同时间成绩的变 ...
- 如何用asp.net MVC框架、highChart库从sql server数据库获取数据动态生成柱状图
如何用asp.net MVC框架.highChart库从sql server数据库获取数据动态生成柱状图?效果大概是这样的,如图: 请问大侠这个这么实现呢?
- html5生成柱状图(条形图)
<html> <canvas id="a_canvas" width="1000" height="700">< ...
- 使用jfreechart生成柱状图、折线图、和饼状图
JFreeChart是JAVA平台上的一个开放的图表绘制类库.它完全使用JAVA语言编写,是为applications, applets, servlets 以及JSP等使用所设计.下面我就详细介绍如 ...
- DevExpress中chartControl中实现统计图功能
public partial class Form1 : DevExpress.XtraEditors.XtraForm { public Form1() { InitializeComponent( ...
- Openstack中用keypair生成和访问虚机的方法
Openstack中用keypair生成和访问虚机的方法 标签:task iso perm cte 生成 复制 vol rsa sla Openstack中用镜像文件生 ...
- [DevExpress]ChartControl之柱状图示例
关键代码: using System; using System.Data; using System.Windows.Forms; using CSharpUtilHelpV2; using Dev ...
- 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 折线图和柱状图的绘制与数据绑定
DevExpress 组件是一个非常丰富和强大的组件,适合各种可视化图形的绘制与展示,在数据分析展示中是个很有帮助的,网上也有很多关于这方面的文章,关于折线图或柱状图的画法,以下是自己在工作中接触到的 ...
随机推荐
- Google地图轨迹回放模拟
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...
- Xcode7 使用NSURLSession发送HTTP请求报错
http://blog.csdn.net/chenyong05314/article/details/46721205
- css 实现评分效果
css实现评分效果,其实是css sprites (css精灵)的延伸应用,效果的实现主要是由 background-position 属性移动图片位置.之前看到有前辈写过关于这方面的内容,在理解上 ...
- 读书笔记--<<会说话的代码>>
三天看完一本书,说出来我都不信,不过我还真是史无前例的做到了, 现在分享一下我的收获,希望大家拍砖,共同讨论一下. <<会说话的代码>>一书是我们BJDP小组里的王洪亮老师的一 ...
- Apache Tiles 2.x 应用指南(转)
转自:http://jaymsimusic.iteye.com/blog/1138906 Apache Tiles 2.x 应用指南 博客分类: Apache Tiles Jakarta Tile ...
- Kurskal算法(克鲁斯卡尔算法)
特点:适用于稀疏图,边比较少的图.如果顶点较少,且为稠密图,则用Prim算法.跟Prim算法的用途相同.时间复杂度为O(e*loge),其中e为边数. 代码: #include <stdio.h ...
- MySQL取得当前时间的函数是什么 格式化日期的函数是什么
取得当前时间用 now() 就行.在数据库中格式化时间 用DATE_FORMA T(date, format) .根据格式串format 格式化日期或日期和时间值date,返回结果串. 可用DATE_ ...
- Android Handler之使用小结
在android开发中,使用Handler处理各种消息机制. Handler用于处理和从队列MessageQueue中得到Message.一般我们要重写Handler的handleMessage(Me ...
- php 数组的几个小算法
1. 判断a数组是否为b数组的子集 <?php $a = array('apple','orange'); $b = array('apple','banana','ornage'); $arr ...
- 第二章——Serializable的使用(跨进程使用和Intent的传递对象)
一.Serializable类(JAVA本身具有的) 简介:Serializable是一个接口. 作用:是JAVA提供的序列化接口,实现序列化和反序列化的操作. 二.跨进程使用 1.事前准备 publ ...