- <!DOCTYPE html>
- <html>
- <head>
- <meta charset="utf-8">
- <title></title>
- <!--1. 引入echarts.js文件-->
- <script src="../echarts_lib/echarts.min.js"></script>
- </head>
- <!--
- 1. 引入echarts.js文件
- 2. 准备一个呈现图表的盒子
- 3. 初始化echarts实例对象
- 4. 准备配置项
- 5. 将配置项设置给echarts实例对象
- -->
- <body>
- <!--2. 准备一个呈现图表的盒子-->
- <div style="width: 600px; height: 600px; position: center;"></div>
- <script type="text/javascript">
- //3. 初始化echarts实例对象
- var mcharts = echarts.init(document.querySelector('div'))
- //4. 准备配置项
- var xDataArr = ['张三', '李四', '王五', '闰土', '小明', '茅台', '二妞', '大强'];
- var yDataArr1 = ['1', '1', '1', '1', '1', '1', '1', '1']; //总客户数
- var yDataArr2 = ['0.12', '0.08', '0.37', '0.23', '0.06', '0.2', '0.28', '0.14']; //拜访数
- var yDataArr3 = []; //未拜访数
- for (var i = 0; i < yDataArr1.length; i++) {
- yDataArr3[i] = yDataArr1[i] - yDataArr2[i];
- }
- var option = {
- title: {
- text: '市场客户拜访占有率',
- right: 'center',
- top: '5%',
- textStyle: {
- fontSize: 20
- }
- },
- toolbox: {
- feature: { //必有的
- saveAsImage: {}, //导出图片
- dataView: {}, //数据视图
- restore: {}, //重置
- dataZoom: {}, //区域缩放
- magicType: { //动态功能切换
- type: ['bar', 'line']
- }
- },
- orient: 'vertical',
- right: '15%',
- top: '10%'
- },
- grid: {
- left: '20%',
- right: '30%',
- bottom: '45%',
- top: '15%',
- width: '60%',
- height: '50%'
- },
- xAxis: {
- type: 'category',
- data: xDataArr
- },
- yAxis: {
- type: 'value'
- },
- legend: { //对系列进行筛选
- data: ['未拜访', '拜访数'],
- width: '30%',
- right: 'center',
- bottom: '25%'
- },
- series: [{
- name: '拜访数',
- type: 'bar',
- stack: '客户情况',
- data: yDataArr2,
- z: 100,
- label: {
- show: true,
- position: 'top',
- fontWeight: 'bold',
- color: 'black',
- formatter:'{c}'
- },
- barWidth: '40%',
- itemStyle: {
- // color: 'rgba(201, 108, 21,1)'
- },
- },
- {
- name: '未拜访',
- type: 'bar',
- stack: '客户情况',
- data: yDataArr2,
- z: 90,
- label: { //显示数据
- show: 'true',
- position: 'top', //数据显示位置,默认inside
- color: 'rgba(126, 100, 52, 5)',
- // formatter:'未拜访:{c}',
- //formatter: '总数:' + yDataArr1[0] + '\n拜访率:' + (yDataArr2[0] / yDataArr1[0] * 100).toFixed(2) +
- // '%',
- formatter: function(params) {
- //console.log(params);
- var sum = yDataArr1[params.dataIndex];
- return '客户总数 ' + sum + '\n' + params.name + ':' + params.value +
- ' (' + (params.value/sum*100).toFixed(2) + '%)';
- },
- lineHeight: 17
- },
- barWidth: '40%',
- itemStyle: { //柱状条颜色
- // color: 'rgba(61, 147, 37, 0.6)'
- }
- }
- ]
- }
- //5. 将配置项设置给echarts实例对象
- mcharts.setOption(option)
- </script>
- </body>
- </html>
复制代码
上一个代码是从sql中获取数,可能不方便您查看,这个是我写的死数,您可以直接运行,代码基本是一样的。 |