blob: d6949f2093e8fdb9f146ea03fe6d21b43a95da20 [file] [log] [blame]
<!DOCTYPE>
<html>
<head>
<meta charset="utf-8">
<script src="lib/esl.js"></script>
<script src="lib/config.js"></script>
<script src="lib/jquery.min.js"></script>
<script src="lib/facePrint.js"></script>
<script src="lib/testHelper.js"></script>
<meta name="viewport" content="width=device-width, initial-scale=1" />
<link rel="stylesheet" href="lib/reset.css">
</head>
<body>
<style>
h1 {
line-height: 60px;
height: 60px;
background: #146402;
text-align: center;
font-weight: bold;
color: #eee;
font-size: 14px;
}
.chart {
height: 500px;
}
</style>
<div class="chart" id="main"></div>
<script>
var echarts;
var chart;
var myChart;
var groupCategories = [];
var groupColors = [];
require([
'echarts'
], function (ec) {
echarts = ec;
chart = myChart = echarts.init(document.getElementById('main'));
var data = [
{name:'广州', value: 50},
{name:'深圳', value: 72},
{name:'珠海', value: 30},
{name:'佛山', value: 38},
{name:'杭州', value: 42},
{name:'舟山', value: 32},
{name:'宁波', value: 52}
];
option = {
tooltip : {
trigger: 'item'
},
legend: {
data:['广州','深圳','珠海','佛山','杭州','舟山','宁波'],
top: 0,
left: 'center'
},
xAxis : [
{
type : 'category',
data : [0],
axisTick: {show: false},
axisLabel: {show: false}
},
],
yAxis : [
{
type : 'value'
}
],
series : echarts.util.map(data, function (item) {
return {
name: item.name,
type: 'bar',
label: {
normal: {
show: true,
position: 'bottom',
formatter: function (param) {
return param.seriesName;
}
}
},
data: [item.value]
}
}).concat([{
type: 'custom',
renderItem: renderProvinceName,
data: [0]
}])
};
function renderProvinceName(param, api) {
var currentSeriesIndices = api.currentSeriesIndices();
currentSeriesIndices.pop(); // remove custom series;
var barLayout = api.barLayout({
barGap: '30%', barCategoryGap: '20%', count: currentSeriesIndices.length
});
var nameTexts = echarts.util.map(currentSeriesIndices, function (serIdx, index) {
var point = api.coord([0, 0]);
point[0] += barLayout[index].offsetCenter;
point[1] = api.getHeight() - 20;
return {
position: point,
name: serIdx,
type: 'circle',
shape: {
cx: 0, cy: 0, r: 10
},
style: {
text: serIdx,
fill: '#333',
textFill: '#eee',
stroke: null
}
};
});
return {
type: 'group',
diffChildrenByName: true,
children: nameTexts
};
}
chart.setOption(option);
});
</script>
</body>
</html>