EXT.NET 使用总结(3)--动态图表
动态生成雷达图--Radar
效果图:

aspx页面代码:
<ext:Panel ID="ResultPanel" Border="true" runat="server">
<Items>
</Items>
</ext:Panel>
因为是动态生成图,所以只需要一个容器装载(Panel);
aspx.cs代码
[DirectMethod(Timeout = )]//限制执行超时时间
protected void ReloadData(object sender, DirectEventArgs e)
{
Dictionary<string, Dictionary<string, double>> data = GenerateChartBySingleCorp();
ResultPanel.Controls.Clear();
Ext.Net.Panel Panel = GetGroupChart(data);
ResultPanel.Add(Panel);//把生成带有Radar图的Panel加到容器里
ResultPanel.ReRender();//重新装载容器(容器位置不变)
// ResultPanel.Render();重新装载容器(容器位置根据添加子元素的顺序加载)
}
public Ext.Net.Panel GetGroupChart(Dictionary<string, Dictionary<string, double>> data )
{
List<Datas> DataList = GetDataSource(data);//数据源 Ext.Net.Model ExtModel = new Ext.Net.Model();//定义一个mode
ExtModel.Fields.Add(new ModelField("Name", ModelFieldType.String));
Dictionary<string, double> first=data.First().Value;
Dictionary<string, string> dataMODE = new Dictionary<string, string>();
int i = ;
foreach (var item in first)
{
ExtModel.Fields.Add(new ModelField("Data"+i, ModelFieldType.Float));
dataMODE.Add("Data"+i,item.Key);
i++;
} RadialAxis ra = new RadialAxis();//定义图表类型,这里定义为 雷达图,也可以定义为线图,柱图,饼图等。
ra.Maximum = ;//最大值
ra.Steps = ;//分成几个圈
//Maximum="5" Steps="5" Chart Chart = new Chart();//定义一个chart容器
Chart.Height = ;
Chart.Width = ;
Chart.StyleSpec = "background:#fff;";
Chart.StandardTheme = StandardChartTheme.Category2;
Chart.InsetPadding = ;
Chart.Animate = true;
Chart.LegendConfig = new ChartLegend(new ChartLegend.Config() { Position = LegendPosition.Right });
foreach (var item in dataMODE)//循环加载数据集
{
RadarSeries radarseries = new RadarSeries();
List<string> XFieldFields = new List<string>();
XFieldFields.Add("Name");
List<string> YFieldFields = new List<string>();
YFieldFields.Add(item.Key);
radarseries.XField = XFieldFields.ToArray();
radarseries.YField = YFieldFields.ToArray();
radarseries.ShowInLegend = true;
radarseries.ShowMarkers = true;
radarseries.Title = item.Value; SpriteAttributes SpriteAttributes = new Ext.Net.SpriteAttributes();
SpriteAttributes.Radius = ;
SpriteAttributes.Size = ;
radarseries.MarkerConfig = SpriteAttributes; SpriteAttributes SpriteAttributes1 = new Ext.Net.SpriteAttributes();
SpriteAttributes1.StrokeWidth = ;
SpriteAttributes1.Fill = "none";
radarseries.Style = SpriteAttributes1; ChartTip ChartTip = new Ext.Net.ChartTip();
ChartTip.TrackMouse = true;
ChartTip.Width = ;
ChartTip.Height = ;
ChartTip.Renderer.Handler = "this.setTitle(storeItem.get('Name') + ': ' + storeItem.get('" + item.Key + "'));";
radarseries.Tips = ChartTip;
Chart.Series.Add(radarseries);
}
Chart.Axes.Add(ra);
Store Store = new Ext.Net.Store();
Store.Model.Add(ExtModel);
Store.Data = DataList;
Store.AutoDataBind = true;
Chart.Store.Add(Store); Ext.Net.Panel Panelp = new Ext.Net.Panel();
Panelp.Border = false;
Panelp.Height = ;
Panelp.Width = ;
Panelp.Add(Chart);
return Panelp;
}
图表总结
和雷达图一样,其他图表也是类似的定义,只是属性不同而已。具体可参考ext.net 提供的demo http://examples.ext.net/#/Chart/Area/Basic/
小白在项目中用到的其他优秀的图表插件
fashion chart
Highcharts
这两款都是比较优秀的图表插件。当然就雷达图而言,小白觉得还是ext的比较漂亮。
更多图表请看小白的博文 http://www.cnblogs.com/WangJinYang/archive/2012/06/19/2554594.html
欢迎博友的意见和建议。
EXT.NET 使用总结(3)--动态图表的更多相关文章
- EXCEL 2010学习笔记—— 动态图表
今天梳理一下动态图表的相关内容,做一个简单的整理 关键的操作点: 1.插入动态控制器:开发工具->插入->表单控件 对控件进行修改 右键 设置控件格式->单元格链接 用来作为if ...
- 使用Visifire+ArcGIS API for Silverlight实现Graphic信息的动态图表显示
原文:使用Visifire+ArcGIS API for Silverlight实现Graphic信息的动态图表显示 首先来看一看实现的效果: PS:原始的程序中更新曲线数据时添加了过渡的效果,具体可 ...
- 开源来自百度商业前端数据可视化团队的超漂亮动态图表--ECharts
开源来自百度商业前端数据可视化团队的超漂亮动态图表--ECharts 本人项目中最近有需要图表的地方,偶然发现一款超级漂亮的动态图标js图表控件,分享给大家,觉得好用的就看一下.更多更漂亮的演示大家可 ...
- PPT里面实现动态图表
今天又被学生提问,可不可以在PPT中做类似Excel中的动态图表?Excel里实现动态图表的方法通常是将图表关联到一个固定的数据区域,然后通过其他单元格的值或者控件来改变该固定区域的数据,以达到动态改 ...
- mbos之动态图表设计
前言 所谓,一图胜千言.人脑有80%的部分专门用于视觉处理.而随着数据时代的全面来临,我们自然有必要将数据转化为图形与图表. Mbos是一个快速,稳定的云端轻应用开发平台.帮助企业快速开发移动应用,加 ...
- Excel动态图表
动态图表其实一点都不难,真的!先看效果,然后教你一步步实现.这是每个地区经销跟代销的数据.Step 01在开发工具插入表单控件.Step 02将表单控件调整到合适的大小,并设置控件格式.Step 03 ...
- 如何使用DAX函数解决动态图表标题
您可能知道,Power BI中的图表(以及许多其他可视化)具有可以设置为任何静态文本的标题.您可以通过选择图表,转到“可视化对象”窗格中的“格式”选项卡,然后更改“标题”部分中的属性(如下所示)来完成 ...
- Java学习---JFreeChart动态图表
JFreeChart是Java中开源的制图组件,主要用于生成各种动态图表.在Java的图形报表技术中,JFreeChart组件提供了方便.快捷.灵活的制图方法.作为一个功能强大的图形报表组件,JFre ...
- jxls实现动态图表
此文章是基于 jxls实现基于excel模板的报表 一. 制作excel动态图表模板 1. 安装 excel 2003 ,新建文件,命名为:runRecord.xls 2. 创建两个表格,分别命名为: ...
随机推荐
- df命令
http://www.th7.cn/system/lin/201311/46839.shtml http://www.111cn.net/sys/CentOS/86335.htm
- 什么是License
许多混乱就始于你不知道License到底是什么,到底有什么含义.当你对你的产品使用License时,并不意味着你放弃了任何权利,你依然对其拥有原著作权.License只是授予他们于特定权利来使用你的产 ...
- SQL拼接自己需要的字符串
SQL行转列有多种写法,如果想把多行数据拼接成为新的一行,比如: 首先,将查询转为XML 替换XML的标签 将第一个字符,去掉试用 STUFF函数 sql STUFF用法 1.作用 删除指定长度的字符 ...
- User space 与 Kernel space
学习 Linux 时,经常可以看到两个词:User space(用户空间)和 Kernel space(内核空间). 简单说,Kernel space 是 Linux 内核的运行空间,User spa ...
- 安装和卸载windows服务 bat
1. 安装 windows服务 C:\Windows\Microsoft.NET\Framework64\v4.0.30319\installutil [服务路径](例:C:\\test\myt ...
- 前端工具HBuilder安装Sass插件
HBuilder自带未安装的less插件,但是sass插件却没有,需要自己安装,步骤如下: 1.安装sass,参考: http://www.w3cplus.com/sassguide/install. ...
- 【Android自学日记】使用DatePicker以及TimePicker显示当前日期和时间
DatePicker 1.获取一个日历对象: Calendar cal=Calendar.getInstance(); 2.获取当前日期及时间: int year=cal.get(Calendar.Y ...
- CapsLock与ctrl的键位修改
windows下修改方式: linux下修改方式: 在用户目录下新建文档命名为keychange.sh 编辑以下内容: remove Lock = Caps_Lock remove Control = ...
- 前端JS常用字符串处理实例
字符串处理常常用在处理服务器回传的数据.动态拼接生成html等,是前端面试的必考题. 我觉得字符串处理这种常用到的,一定要了然于心,不然用到时急急忙忙去翻手册费半天. 入正题,首先提出平常遇到的几个需 ...
- rocketmq查看命令
首先进入 RocketMQ 工程,进入/RocketMQ/bin 在该目录下有个 mqadmin 脚本 . 查看帮助: 在 mqadmin 下可以查看有哪些命令 a: 查看具体命令的使 ...