初识 EXT3.0 中的 chart
2009-08-31 20:37
405 查看
今天我们大哥让我学习一下 EXT3.0。说里边有个新组件 chart 让我好好看一下。
在官网上下了个 EXT3.0(http://extjs.com/products/extjs/download.php)。直接解压到 Tomcat 的 Webapps 里边。这样可以在服务器下看 EXT 的 API 和 examples。先看看 examples,里边确实多了一项 chart。打开后发现,chart 分为 线形图,饼图等等。今天只把线形图看了。构造线形图必须提供一个 store。store 可以使用本地数据,也可以从后台获取数据。下面是一个从后台获取数据的例子:
test.html
===================================================================================
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>Charts</title>
<link rel="stylesheet" type="text/css" href="resources/css/ext-all.css" />
<script type="text/javascript" src="adapter/ext/ext-base.js"></script>
<script type="text/javascript" src="ext-all.js"></script>
<script type="text/javascript">
Ext.onReady(function() {
var store = new Ext.data.JsonStore({
fields:["name", "visits", "views"],
url:"test.jsp"
});
store.load();
// extra extra simple
new Ext.Panel({
title: "ExtJS.com Visits Trend, 2007/2008 (No styling)",
renderTo: "chart",
width:800,
height:800,
url:"resources/charts.swf",
layout:"fit",
frame:true,
items: {
xtype: "linechart",
store: store,
xField: "name",
yField: "visits",
listeners: {
itemclick: function(o){
var rec = store.getAt(o.index);
Ext.Msg.alert("Item Selected", "You chose dddddddddddddddddd");
}
}
}
});
});
</script>
</head>
<body id="chart"></div>
====================================================================================
test.jsp
====================================================================================
<%@ page contentType="text/html;charset=utf-8"%>
<%
String sb="";
sb+="{";
sb+="root:[{";
sb+="name:'Jul07',visits:245000";
sb+="},{";
sb+="name:'Aug07',visits:205000";
sb+="},{";
sb+="name:'Sep07',visits:115000";
sb+="},{";
sb+="name:'Oct07',visits:255000";
sb+="},{";
sb+="name:'Nov07',visits:345000";
sb+="},{";
sb+="name:'Dec07',visits:315000";
sb+="}]";
sb+="}";
out.print(sb);
%>
===================================================================================
JsonStore 必须和 JSON 对象对应好, JSON 里有 root ,则 JsonStore 里必须指定 root。
横竖坐标的生成和数据类型有关,如果是数值类型的,则自动计算出上限和下限,并根据线形图的大小来选取合适的间隔。图越大,间隔越小。如果是字符类型的,则每项都显示,不过这也是在图的大小足够的情况下才能完全显示。
第一天就看了这么多,上面说的全是自己的看法,不一定正确,算是一个参考吧。
希望大家多多指点。
在官网上下了个 EXT3.0(http://extjs.com/products/extjs/download.php)。直接解压到 Tomcat 的 Webapps 里边。这样可以在服务器下看 EXT 的 API 和 examples。先看看 examples,里边确实多了一项 chart。打开后发现,chart 分为 线形图,饼图等等。今天只把线形图看了。构造线形图必须提供一个 store。store 可以使用本地数据,也可以从后台获取数据。下面是一个从后台获取数据的例子:
test.html
===================================================================================
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>Charts</title>
<link rel="stylesheet" type="text/css" href="resources/css/ext-all.css" />
<script type="text/javascript" src="adapter/ext/ext-base.js"></script>
<script type="text/javascript" src="ext-all.js"></script>
<script type="text/javascript">
Ext.onReady(function() {
var store = new Ext.data.JsonStore({
fields:["name", "visits", "views"],
url:"test.jsp"
});
store.load();
// extra extra simple
new Ext.Panel({
title: "ExtJS.com Visits Trend, 2007/2008 (No styling)",
renderTo: "chart",
width:800,
height:800,
url:"resources/charts.swf",
layout:"fit",
frame:true,
items: {
xtype: "linechart",
store: store,
xField: "name",
yField: "visits",
listeners: {
itemclick: function(o){
var rec = store.getAt(o.index);
Ext.Msg.alert("Item Selected", "You chose dddddddddddddddddd");
}
}
}
});
});
</script>
</head>
<body id="chart"></div>
====================================================================================
test.jsp
====================================================================================
<%@ page contentType="text/html;charset=utf-8"%>
<%
String sb="";
sb+="{";
sb+="root:[{";
sb+="name:'Jul07',visits:245000";
sb+="},{";
sb+="name:'Aug07',visits:205000";
sb+="},{";
sb+="name:'Sep07',visits:115000";
sb+="},{";
sb+="name:'Oct07',visits:255000";
sb+="},{";
sb+="name:'Nov07',visits:345000";
sb+="},{";
sb+="name:'Dec07',visits:315000";
sb+="}]";
sb+="}";
out.print(sb);
%>
===================================================================================
JsonStore 必须和 JSON 对象对应好, JSON 里有 root ,则 JsonStore 里必须指定 root。
横竖坐标的生成和数据类型有关,如果是数值类型的,则自动计算出上限和下限,并根据线形图的大小来选取合适的间隔。图越大,间隔越小。如果是字符类型的,则每项都显示,不过这也是在图的大小足够的情况下才能完全显示。
第一天就看了这么多,上面说的全是自己的看法,不一定正确,算是一个参考吧。
希望大家多多指点。
相关文章推荐
- Ext 3.0 chart 心得
- 使用 ext.js 3.0 和 .net 做的一个简单HR 系统,供大家参考
- 初识TC3.0
- Cocos2d-x 3.0 红孩儿私家必修 - 第一章 初识Cocos2d-x 3.0工程
- 深入浅出CChart 每日一课——快乐高四第十二课 必也正名,Win32标准控件ChartCtrl之初识
- Ext.chart.Chart 显示图标 -- 本地数据
- 超酷的Chart in MVC 3.0
- 插件学习之道:ext-jsb-3.0.0.zip共享Ext JS 3.0以上版本在eclipse中使用spket插件设置自动提示的方法
- 步步为营VS 2008 + .NET 3.5(3) - C# 3.0新特性之Automatic Properties(自动属性)、Object Initializers(对象初始化器)、Collection Initializers(集合初始化器)和Ext
- Ext学习系列(1)初识Ext
- 初识Visual Studio 2010(五)—— 图形报表控件Chart
- ext3.0 增删改查集中到一个页面
- Ext 3.0 +ASP.NET2.0 可视化开发介绍
- ASP.NET MVC 3.0(三): 初识MVC的Url映射潜规则Routing
- ExtAspNet新版本发布,集成Extjs3.0,兼容IE浏览器
- Ext快3.0了,秀一下最近做的一些效果
- Ext 3.0新增内容系列文章之一:Ext.data.Api快速一睹
- 步步为营VS 2008 + .NET 3.5(3) - C# 3.0新特性之Automatic Properties(自动属性)、Object Initializers(对象初始化器)、Collection Initializers(集合初始化器)和Ext
- Cocos2d-x 3.0 红孩儿私家必修 - 第一章 初识Cocos2d-x 3.0工程
- Ext架构分析(5)--Layout初识:ContainerLayout