条形图又称横向柱状图。当维度分类较多,并且维度字段名称又较长时,不适合使用柱状图,应该将多指标柱状图更改为单指标的条形图,从而有效提高数据对比的清晰度。相比柱状图,条形图的优势在于:能够横向布局,方便展示较长的维度项名称。对于条形图的数值大小,必须按照降序排列,以提升条形图的阅读体验。 利用2011年与2012年A、B、C、D、E这5个国家的人口数据,以及世界人口数据,绘制标准条形图。在图中,由上到下各个柱子依次表示2011年和2012年的世界人口、E国人口、D国人口、C国人口、B国人口和A国人口。由于柱子较多,所以适合使用条形图。
最终的代码生成图如下:
源代码如下:
<html>
<head>
<meta charset="utf-8">
<!--引入ECharts脚本-->
<script src="js/echarts.js"></script>
</head>
<body>
<!---为ECharts准备一个具备大小(宽高)的DOM-->
<div id="main" style="width: 800px; height: 400px"></div>
<script type="text/javascript">
//基于准备好的DOM,初始化ECharts图表
var myChart = echarts.init(document.getElementById("main"));
//指定图表的配置项和数据
var option = {
title: {
text: '世界人口总量',
subtext: '数据来自网络',
},
tooltip: {
trigger: 'axis',
},
legend: {
data: ['2011年', '2012年'],
},
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: 'value', //设置柱状图
boundaryGap: [0, 0.01],
},
],
yAxis: [
{
type: 'category',
data: ['A国', 'B国', 'C国', 'D国', 'E国', '世界人口(万)'],
},
],
series: [
{
name: '2011年',
type: 'bar',
data: [18203, 23489, 29034, 104970, 131744, 630230],
},
{
name: '2012年',
type: 'bar',
data: [19325, 23438, 31000, 121594, 134141, 681807],
},
],
};
//使用刚指定的配置项和数据显示图表
myChart.setOption(option);
</script>
</body>
</html>