EChart-Json戻り値に基づいてBar図を生成
7841 ワード
Json結果セットに基づいてBar図を生成する、第1列は記述として固定され、後の列は値フィールドとする.
<!DOCTYPE html>
<head>
<meta charset="utf-8">
<title>ECharts</title>
</head>
<body>
<!-- ECharts ( ) Dom -->
<div id="main" style="height:600px"></div>
<!-- ECharts -->
<script src="http://echarts.baidu.com/build/dist/echarts.js"></script>
<script type="text/javascript">
//
require.config({
paths: {
echarts: 'http://echarts.baidu.com/build/dist'
}
});
/*
var json_data = [{"title":" ","value":5,"value1":15},{"title":" ","value":15,"value1":15},{"title":" ","value":25,"value1":25}
,{"title":" ","value":45,"value1":15},{"title":" ","value":15,"value1":25},{"title":" ","value":15,"value1":25}];
*/
var json_data = [{"title":" ","value":5,"value1":15,"value2":15},{"title":" ","value":15,"value1":15,"value2":15}
,{"title":" ","value":25,"value1":25,"value2":15},{"title":" ","value":45,"value1":15,"value2":15}
,{"title":" ","value":15,"value1":25,"value2":15},{"title":" ","value":15,"value1":25,"value2":15}];
var col_title = ""; // ,
var col_data = [] ; // , , ["value","value1"];
var col_data_name =[]; // , , [" "," "];
var chart_title =new Array(); //
var chart_data = new Array(); //
// ,
var col = 0;
for(var key in json_data[0]){
if(col==0)
col_title = key;
else
{
col_data.push(key);
col_data_name.push(key);
}
col++;
}
//
for(var i =0;i<col_data.length;i++){
chart_data[i] = {
"name": col_data_name[i],
"type":"bar",
"data": [] //[5, 20, 40, 10, 10, 20]
};
}
//
for(var i=0;i<json_data.length;i++){
chart_title.push(json_data[i]["title"]);
for(var j =0;j<col_data.length;j++){
var col_name = col_data[j];
chart_data[j].data.push(json_data[i][col_name]);
//chart_data[1].data.push(json_data[i]["value1"]);
};
};
//
require(
[
'echarts',
'echarts/chart/bar' // bar ,
],
function (ec) {
// dom, echarts
var myChart = ec.init(document.getElementById('main'));
var option = {
tooltip: {
show: true
},
legend: {
data: col_data_name
},
xAxis : [
{
type : 'category',
data : chart_title //[" "," "," "," "," "," "]
}
],
yAxis : [
{
type : 'value'
}
],
series : chart_data
};
// echarts
myChart.setOption(option);
}
);
</script>
</body>