ECharts主頁: http://echarts.baidu.com/index.html
ECharts-2.1.8下載地址: http://echarts.baidu.com/build/echarts-2.1.8.zip
ECharts官方實(shí)例: http://echarts.baidu.com/doc/example.html
ECharts官方API文檔: http://echarts.baidu.com/doc/doc.html
ECharts系列 - 柱狀圖(條形圖)實(shí)例一
1、項(xiàng)目結(jié)構(gòu)

js文件夾: 下載了ECharts之后,解壓縮,如解壓后的根目錄是echarts-2.1.8,則到echarts-2.1.8\doc\example\www路徑下,把里面的js文件夾直接復(fù)制粘貼到項(xiàng)目的 WebRoot根目錄下即可
echarts.jsp: 在WebRoot根目錄下新建echarts.jsp
echarts.jsp
-
<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
-
<%
-
String path = request.getContextPath();
-
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
-
%>
-
-
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
-
<html>
-
<head>
-
<base href="<%=basePath%>">
-
<title>ECharts實(shí)例</title>
-
</head>
-
<body>
-
<!--Step:1 Prepare a dom for ECharts which (must) has size (width & hight)-->
-
<!--Step:1 為ECharts準(zhǔn)備一個(gè)具備大?。▽捀撸┑腄om-->
-
<div id="mainBar" style="height:500px;border:1px solid #ccc;padding:10px;"></div>
-
-
<!--Step:2 Import echarts.js-->
-
<!--Step:2 引入echarts.js-->
-
<script src="js/echarts.js"></script>
-
-
<script type="text/javascript">
-
// Step:3 conifg ECharts's path, link to echarts.js from current page.
-
// Step:3 為模塊加載器配置echarts的路徑,從當(dāng)前頁面鏈接到echarts.js,定義所需圖表路徑
-
require.config({
-
paths: {
-
echarts: './js'
-
}
-
});
-
-
// Step:4 require echarts and use it in the callback.
-
// Step:4 動態(tài)加載echarts然后在回調(diào)函數(shù)中開始使用,注意保持按需加載結(jié)構(gòu)定義圖表路徑
-
require(
-
[
-
//這里的'echarts'相當(dāng)于'./js'
-
'echarts',
-
'echarts/chart/bar',
-
'echarts/chart/line',
-
],
-
//創(chuàng)建ECharts圖表方法
-
function (ec) {
-
//--- 折柱 ---
-
//基于準(zhǔn)備好的dom,初始化echart圖表
-
var myChart = ec.init(document.getElementById('mainBar'));
-
//定義圖表option
-
var option = {
-
//標(biāo)題,每個(gè)圖表最多僅有一個(gè)標(biāo)題控件,每個(gè)標(biāo)題控件可設(shè)主副標(biāo)題
-
title: {
-
//主標(biāo)題文本,'\n'指定換行
-
text: '2013年廣州降水量與蒸發(fā)量統(tǒng)計(jì)報(bào)表',
-
//主標(biāo)題文本超鏈接
-
link: 'http://www./weatherLive/climateForecast/2014-01-26/157.html',
-
//副標(biāo)題文本,'\n'指定換行
-
subtext: 'www.',
-
//副標(biāo)題文本超鏈接
-
sublink: 'http://www./myblog/?Echarts',
-
//水平安放位置,默認(rèn)為左側(cè),可選為:'center' | 'left' | 'right' | {number}(x坐標(biāo),單位px)
-
x: 'left',
-
//垂直安放位置,默認(rèn)為全圖頂端,可選為:'top' | 'bottom' | 'center' | {number}(y坐標(biāo),單位px)
-
y: 'top'
-
},
-
//提示框,鼠標(biāo)懸浮交互時(shí)的信息提示
-
tooltip: {
-
//觸發(fā)類型,默認(rèn)('item')數(shù)據(jù)觸發(fā),可選為:'item' | 'axis'
-
trigger: 'axis'
-
},
-
//圖例,每個(gè)圖表最多僅有一個(gè)圖例
-
legend: {
-
//顯示策略,可選為:true(顯示) | false(隱藏),默認(rèn)值為true
-
show: true,
-
//水平安放位置,默認(rèn)為全圖居中,可選為:'center' | 'left' | 'right' | {number}(x坐標(biāo),單位px)
-
x: 'center',
-
//垂直安放位置,默認(rèn)為全圖頂端,可選為:'top' | 'bottom' | 'center' | {number}(y坐標(biāo),單位px)
-
y: 'top',
-
//legend的data: 用于設(shè)置圖例,data內(nèi)的字符串?dāng)?shù)組需要與sereis數(shù)組內(nèi)每一個(gè)series的name值對應(yīng)
-
data: ['蒸發(fā)量','降水量']
-
},
-
//工具箱,每個(gè)圖表最多僅有一個(gè)工具箱
-
toolbox: {
-
//顯示策略,可選為:true(顯示) | false(隱藏),默認(rèn)值為false
-
show: true,
-
//啟用功能,目前支持feature,工具箱自定義功能回調(diào)處理
-
feature: {
-
//輔助線標(biāo)志
-
mark: {show: true},
-
//dataZoom,框選區(qū)域縮放,自動與存在的dataZoom控件同步,分別是啟用,縮放后退
-
dataZoom: {
-
show: true,
-
title: {
-
dataZoom: '區(qū)域縮放',
-
dataZoomReset: '區(qū)域縮放后退'
-
}
-
},
-
//數(shù)據(jù)視圖,打開數(shù)據(jù)視圖,可設(shè)置更多屬性,readOnly 默認(rèn)數(shù)據(jù)視圖為只讀(即值為true),可指定readOnly為false打開編輯功能
-
dataView: {show: true, readOnly: true},
-
//magicType,動態(tài)類型切換,支持直角系下的折線圖、柱狀圖、堆積、平鋪轉(zhuǎn)換
-
magicType: {show: true, type: ['line', 'bar']},
-
//restore,還原,復(fù)位原始圖表
-
restore: {show: true},
-
//saveAsImage,保存圖片(IE8-不支持),圖片類型默認(rèn)為'png'
-
saveAsImage: {show: true}
-
}
-
},
-
//是否啟用拖拽重計(jì)算特性,默認(rèn)關(guān)閉(即值為false)
-
calculable: true,
-
//直角坐標(biāo)系中橫軸數(shù)組,數(shù)組中每一項(xiàng)代表一條橫軸坐標(biāo)軸,僅有一條時(shí)可省略數(shù)值
-
//橫軸通常為類目型,但條形圖時(shí)則橫軸為數(shù)值型,散點(diǎn)圖時(shí)則橫縱均為數(shù)值型
-
xAxis: [
-
{
-
//顯示策略,可選為:true(顯示) | false(隱藏),默認(rèn)值為true
-
show: true,
-
//坐標(biāo)軸類型,橫軸默認(rèn)為類目型'category'
-
type: 'category',
-
//類目型坐標(biāo)軸文本標(biāo)簽數(shù)組,指定label內(nèi)容。 數(shù)組項(xiàng)通常為文本,'\n'指定換行
-
data: ['1月','2月','3月','4月','5月','6月','7月','8月','9月','10月','11月','12月']
-
}
-
],
-
//直角坐標(biāo)系中縱軸數(shù)組,數(shù)組中每一項(xiàng)代表一條縱軸坐標(biāo)軸,僅有一條時(shí)可省略數(shù)值
-
//縱軸通常為數(shù)值型,但條形圖時(shí)則縱軸為類目型
-
yAxis: [
-
{
-
//顯示策略,可選為:true(顯示) | false(隱藏),默認(rèn)值為true
-
show: true,
-
//坐標(biāo)軸類型,縱軸默認(rèn)為數(shù)值型'value'
-
type: 'value',
-
//分隔區(qū)域,默認(rèn)不顯示
-
splitArea: {show: true}
-
}
-
],
-
-
//sereis的數(shù)據(jù): 用于設(shè)置圖表數(shù)據(jù)之用。series是一個(gè)對象嵌套的結(jié)構(gòu);對象內(nèi)包含對象
-
series: [
-
{
-
//系列名稱,如果啟用legend,該值將被legend.data索引相關(guān)
-
name: '蒸發(fā)量',
-
//圖表類型,必要參數(shù)!如為空或不支持類型,則該系列數(shù)據(jù)不被顯示。
-
type: 'bar',
-
//系列中的數(shù)據(jù)內(nèi)容數(shù)組,折線圖以及柱狀圖時(shí)數(shù)組長度等于所使用類目軸文本標(biāo)簽數(shù)組axis.data的長度,并且他們間是一一對應(yīng)的。數(shù)組項(xiàng)通常為數(shù)值
-
data: [2.0, 4.9, 7.0, 23.2, 25.6, 76.7, 135.6, 162.2, 32.6, 20.0, 6.4, 3.3],
-
//系列中的數(shù)據(jù)標(biāo)注內(nèi)容
-
markPoint: {
-
data: [
-
{type: 'max', name: '最大值'},
-
{type: 'min', name: '最小值'}
-
]
-
},
-
//系列中的數(shù)據(jù)標(biāo)線內(nèi)容
-
markLine: {
-
data: [
-
{type: 'average', name: '平均值'}
-
]
-
}
-
},
-
{
-
//系列名稱,如果啟用legend,該值將被legend.data索引相關(guān)
-
name: '降水量',
-
//圖表類型,必要參數(shù)!如為空或不支持類型,則該系列數(shù)據(jù)不被顯示。
-
type: 'bar',
-
//系列中的數(shù)據(jù)內(nèi)容數(shù)組,折線圖以及柱狀圖時(shí)數(shù)組長度等于所使用類目軸文本標(biāo)簽數(shù)組axis.data的長度,并且他們間是一一對應(yīng)的。數(shù)組項(xiàng)通常為數(shù)值
-
data: [2.6, 5.9, 9.0, 26.4, 28.7, 70.7, 175.6, 182.2, 48.7, 18.8, 6.0, 2.3],
-
//系列中的數(shù)據(jù)標(biāo)注內(nèi)容
-
markPoint: {
-
data: [
-
{type: 'max', name: '最大值'},
-
{type: 'min', name: '最小值'}
-
]
-
},
-
//系列中的數(shù)據(jù)標(biāo)線內(nèi)容
-
markLine: {
-
data: [
-
{type: 'average', name: '平均值'}
-
]
-
}
-
}
-
]
-
};
-
-
//為echarts對象加載數(shù)據(jù)
-
myChart.setOption(option);
-
}
-
);
-
</script>
-
</body>
-
</html>
完成以上的步驟后,把項(xiàng)目發(fā)布到服務(wù)器,在瀏覽器上訪問echarts.jsp(由于本實(shí)例還沒有跟后臺進(jìn)行交互,只是先做一個(gè)前臺用法介紹,所以可以把echart.jsp直接修改成echarts.html文件,把它跟js文件夾放在同一級目錄下,然后直接用瀏覽器打開echarts.html),即可看到下面的效果

圖片中的右上角有個(gè)工具箱,點(diǎn)擊“折線圖切換”按鈕后,效果如下

更多的圖表樣式設(shè)置,可以查看ECharts的官方API文檔
|