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. 创建两个表格,分别命名为: ...
随机推荐
- 我们为什么要看《超实用的Node.JS代码段》
不知道自己Node.JS水平如何?看这张图 如果一半以上的你都不会,必须看这本书,一线工程师用代码和功能页面来告诉你每一个技巧点. 都会一点,但不知道如何检验自己,看看本书提供的面试题: 1. ...
- python多种格式数据加载、处理与存储
多种格式数据加载.处理与存储 实际的场景中,我们会在不同的地方遇到各种不同的数据格式(比如大家熟悉的csv与txt,比如网页HTML格式,比如XML格式),我们来一起看看python如何和这些格式的数 ...
- 释放修改OS X 10.11系统文件权限【转】
序言:有时要替换相关的(系统目录下的)文件以完成软件的破解,但在 OS X 10.11 系统图形界面下,Root(系统超级用户)已‘转变’为 Administrator(管理员用户),选择系统文件夹( ...
- 整理:Javascript获取数组中的最大值和最小值的方法汇总
方法一: ? 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 //最小值 Array.prototype.min = function ...
- centos 7 配置网络
文档: https://wiki.centos.org/FAQ/CentOS7
- Ubuntu16.04安装Screenlets
通过添加软件源的方式安装装 sudo add-apt-repository ppa:screenlets/ppa sudo apt-get update sudo apt-get install sc ...
- wget 断点续传 & nginx文件服务器
nginx默认支持断点续传: 测试方法: wget -S http://httpd.apache.org/images/httpd_logo_wide_new.png 2>&1 | gr ...
- 在Xcode5中修改整个项目名
总会遇到几个项目,在做到一半的时候被要求改项目名,网上找了下相关的资料,大多数是xcode5以前的版本,所以解决好了在这里mark一下,给需要的人. 目标为:将项目名XCD4改成xcd5. 先上结果图 ...
- Go简介
Go是Google开发的一种编译型,並發型,并具有垃圾回收功能的编程语言. 罗伯特·格瑞史莫(Robert Griesemer),罗勃·派克(Rob Pike)及肯·汤普逊于2007年9月开始设计Go ...
- css文件 引用后不起作用
你如果填写的是相对路径,那么检查一下路径是否正确. 如果相对路径正确,那么有可能你的css样式的层级错误(概率也不低),比如说图片的引用路径发生了改变等等. 要看你预览的浏览器是什么,我经常遇到IE预 ...