首先配置一个div块,设置id=main;记住导入cdd,js库
<html> <head> <meta charset="utf-8"> <title>报表</title> <style> .col-center-block { float: none; display: block; margin-left: auto; margin-right: auto; } </style> </head> <body> <div> <div class="input-group col-md-3 col-center-block" style="margin-top:0px;positon:relative;"> <input type="text" id="date" class="Wdate form-control" placeholder="请选择时间" onclick="WdatePicker({dateFmt:'yyyy-MM-dd',readOnly:true, maxDate: '%y-%M-{%d-1}'})"> </div> <div id="main" style="height: 400px"></div> </div> <!-- ECharts单文件引入 --> <script src="<%=basePath%>/static/js/jquery-1.9.1.min.js"></script> <script src="<%=basePath%>/static/echarts-2.2.7/build/dist/echarts.js"></script> <link href="/static/echarts-2.2.7/doc/asset/css/font-awesome.min.css" rel="stylesheet"> <link href="/static/echarts-2.2.7/doc/asset/css/bootstrap.css" rel="stylesheet"> <link href="/static/echarts-2.2.7/doc/asset/css/carousel.css" rel="stylesheet"> <script src="/static/My97DatePicker/WdatePicker.js"></script>
引入echarts插件,并将整个需要加载的echarts设计成一个load()方法,利用ajax就可以动态的生成,
function load() {
require.config({
paths: {
echarts: '<%=basePath%>/static/echarts-2.2.7/build/dist'
}
});
// 使用
require(
[
'echarts',
'echarts/chart/bar', // 使用柱状图就加载bar模块,按需加载
'echarts/chart/line' // 使用柱状图就加载曲线模块,按需加载
],
function (ec) {
// 基于准备好的dom,初始化echarts图表
var myChart = ec.init(document.getElementById('main'));
var option = {
title : {
text: '每个小时的访问量',
},
tooltip : {
trigger: 'axis'
},
legend: {
//data:['pv','200','304',"500"]
data:['pv']
},
toolbox: {
show : true,
feature : {
mark : {show: true},
dataView : {show: true, readOnly: false},
magicType : {show: true, type: ['line', 'bar']},
restore : {show: true},
saveAsImage : {show: true}
}
},
calculable : true,
xAxis : [
{
type : 'category',
data : hours
}
],
yAxis : [
{
type : 'value'
}
],
series : [
{
name:'',
type:'bar',
data:total, //统计的数据,需要与 xAxis里的data : hours相对应;
markPoint : {
data : [
{type : 'max', name: '最大值'},
{type : 'min', name: '最小值'}
]
},
markLine : {
data : [
{type : 'average', name: '平均值'}
]
}
}
// {
// name:'降水量',
// type:'bar',
// 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],
// markPoint : {
// data : [
// {type : 'max', name: '最大值'},
// {type : 'min', name: '最小值'}
// ]
// },
// markLine : {
// data : [
// {type : 'average', name : '平均值'}
// ]
// }
// }
]
};
// 为echarts对象加载数据
myChart.setOption(option);
}
);
}
</script>
配置ajax异步交互,获取返回的map集合包含hours和value,传入load()就可以实现动态图 表