数据可视化(Echart):柱状图、折线图、饼图等六种基本图表的特点及适⽤场
合
数据可视化(Echart)
柱状图、折线图、饼图等六种基本图表的特点及适⽤场合
效果图
源码
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>ECharts</title>
<!-- 引⼊ echarts.js -->
<script src="js/echarts.min.js"></script>
</head>
<body>
<!-- 为ECharts准备⼀个具备⼤⼩(宽⾼)的Dom -->
<div id="main" ></div>
<div id="main2" ></div>
<div id="main3" ></div>
<div id="main4" ></div>
<script type="text/javascript">
//模拟后台传来的json
var jsondata =
'{"sales":[{"name":"衬衫","num":"70"},{"name":"⽺⽑衫","num":"27"},{"name":"裤⼦","num":"36"},{"name":"⾼跟鞋","num":"18"},{"name":"袜⼦","num":"85"},{"name":"棉袄","num":"105"}]}';
var jsonobj = JSON.parse(jsondata);
//获取json中的数值
var dataName = [];
var dataNum = [];
var temp = jsonobj;
//匿名函数解析json串中的数值,关键点
(function() {
for(var i = 0; i < temp.sales.length; i++) {
dataName.push(temp.sales[i].name);
dataNum.push(temp.sales[i].num);
}
})();
// 基于准备好的dom,初始化echarts实例
var myChart = echarts.ElementById('main'));
var myChart2 = echarts.ElementById('main2'));
//折线图
var option = {
title: {
text: '⾐物销量统计'
},
tooltip: {},
javascript基本特点legend: {
data: ['销量']
},
xAxis: {
/
/x轴字体颜⾊
/*axisLine: {
lineStyle: {
color: '#C50023'
}
},*/
data: dataName,
},
yAxis: [{
//定义y轴最⼤与最⼩值
min: 0,
max: 120,
type: 'value',
name: '⽇销量(万)',
splitNumber: 5
}],
series: [{
//折线上数字
/* label: {
normal: {
show: true,
position: 'top',
formatter:100
}
},*/
// 折线颜⾊
/*itemStyle: {
normal: {
//线上。的颜⾊
color: '#33CCFF',
lineStyle: {
//线的颜⾊
color: '#33CCFF'
}
}
},*/
//顶上⼩图标名称
name: '销量',
type: 'line',
data: dataNum,
//平均值
markLine: {
data: [{
type: 'average',
name: '平均值'
}]
},
}]
};
myChart.setOption(option);
//柱状图
// 指定图表的配置项和数据
var option2 = {
title: {
text: '⾐物销量统计'
},
tooltip: {},
legend: {
data: ['销量']
},
xAxis: {
data: dataName,
},
yAxis: {
type: 'value',
name: '⽇销量(万)',
splitNumber: 5
},
series: [{
name: '销量',
type: 'bar',
//柱状宽度
barWidth: 20,
data: dataNum,
}]
};
// 使⽤刚指定的配置项和数据显⽰图表。
myChart2.setOption(option2);
//饼状图
echarts.ElementById('main3')).setOption({ title: {
text: '⾐物销量统计',
subtext: '⽇销量(万)',
x: 'center',
//背景⾊
//backgroundColor:'rgba(12,121,123,0.1)'
},
series: [{
name: '详情',
type: 'pie',
//饼状图的⼤⼩
//radius : '55%',
center: ['50%', '60%'],
data: (function() { //饼状图需要函数解析数字内的值
var res = [];
var len = dataName.length;
while(len--) {
res.push({
name: dataName[len],
value: dataNum[len]
});
}
return res;
})()
}]
})
echarts.ElementById('main4')).setOption({ title: {
text: '⾐物销量统计'
},
tooltip: {},
legend: {
data: ['销量']
},
xAxis: {
data: ["衬衫", "⽺⽑衫", "雪纺衫", "裤⼦", "⾼跟鞋", "袜⼦"] },
yAxis: {
type: 'value',
name: '⽇销量(万)',
min: 0,
max: 4,
axisLabel: {
formatter: function(value) {
var texts = [];
if(value == 0) {
texts.push('woo');
} else if(value <= 1) {
texts.push('好');
} else if(value <= 2) {
texts.push('很好');
} else if(value <= 3) {
texts.push('⾮常好');
} else {
texts.push('完美');
}
return texts;
}
}
},
series: [{
name: '销量',
type: 'bar',
//柱状宽度
//barWidth: 20,
data: [1, 4, 2, 3, 2, 0]
}]
})
</script>
</body>
</html>
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论