博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
ECharts 在同一个页面添加多个图表 并 给图表绑定事件
阅读量:7091 次
发布时间:2019-06-28

本文共 3651 字,大约阅读时间需要 12 分钟。

 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
<!DOCTYPE html>
<head>
<meta charset=
"utf-8"
>
<title>ECharts</title>
</head>
<body>
<!-- 为ECharts准备一个具备大小(宽高)的Dom -->
<div id=
"barMain"
style=
"height:400px"
></div>
<div id=
"lineMain"
style=
"height:400px"
></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'
  }
});
// 使用
require(
      [
        
'echarts'
,
        
'echarts/chart/bar'
,
        
'echarts/chart/line'
      ],
      drawEcharts
);
 
function
drawEcharts(ec){
  drawBar(ec);
  drawLine(ec);
}
function
drawBar(ec){
  
var
myBarChart = ec.init(document.getElementById(
'barMain'
));
  
var
option = {
    tooltip: {
    show:
true
  },
  legend: {
    data:[
'销量'
]
  },
  xAxis : [
    {
      type :
'category'
,
      data : [
"衬衫"
,
"羊毛衫"
,
"雪纺衫"
,
"裤子"
,
"高跟鞋"
,
"袜子"
]
    }
  ],
  yAxis : [
    {
      type :
'value'
    }
  ],
  series : [
    {
      
"name"
:
"销量"
,
      
"type"
:
"bar"
,
      
"data"
:[5, 20, 40, 10, 10, 20]
    }
  ]
};
myBarChart.setOption(option,
true
);
//当setOption第二个参数为true时,会阻止数据合并
}
 
 
function
drawLine(ec){
  
var
myLineChart = ec.init(document.getElementById(
'lineMain'
));
  
var
option2 = {
    title : {
    text:
'未来一周气温变化'
,
    subtext:
'纯属虚构'
  },
  tooltip : {
    trigger:
'axis'
  },
  legend: {
    data:[
'最高气温'
,
'最低气温'
]
  },
  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 :
'category'
,
      boundaryGap :
false
,
      data : [
'周一'
,
'周二'
,
'周三'
,
'周四'
,
'周五'
,
'周六'
,
'周日'
]
    }
  ],
  yAxis : [
    {
      type :
'value'
,
      axisLabel : {
        formatter:
'{value} °C'
      }
    }
  ],
  series : [
    {
      name:
'最高气温'
,
      type:
'line'
,
      data:[11, 11, 15, 13, 12, 13, 10],
      markPoint : {
        data : [
          {type :
'max'
, name:
'最大值'
},
          {type :
'min'
, name:
'最小值'
}
        ]
      },
      markLine : {
        data : [
          {type :
'average'
, name:
'平均值'
}
        ]
      }
    },
    {
      name:
'最低气温'
,
      type:
'line'
,
      data:[1, -2, 2, 5, 3, 2, 0],
      markPoint : {
        data : [
          {name :
'周最低'
, value : -2, xAxis: 1, yAxis: -1.5}
        ]
      },
      markLine : {
        data : [
          {type :
'average'
, name :
'平均值'
}
        ]
      }
    }
  ]
};
myLineChart.setOption(option2,
true
);
}
</script>
</body>

 

补充:给图表绑定事件(以上面柱状图为例,绑定click事件)

1
2
3
4
5
6
/* 给柱状图绑定click事件 */
 
var
ecConfig = require(
'echarts/config'
);
 
function
eConsole(param) {
   alert(param.value);   
// 弹出当前柱子的数值
 }
 myBarChart.on(ecConfig.EVENT.CLICK, eConsole);

这段代码加在 myBarChart.setOption(option,true); //当setOption第二个参数为true时,会阻止数据合并,这行代码上面。

-----------------------------------------------------------------------------------------------------------------------------------------------

如下:

  

 

转载于:https://www.cnblogs.com/hellman/p/8135071.html

你可能感兴趣的文章
Mysql数据类型DECIMAL(M,D)用法
查看>>
android adb命令行工具使用
查看>>
javascript 正则替换字符的新方法!
查看>>
WayOs 帐号到期自动清理工具,致浪费在清理到期用户的青春
查看>>
13 SELECT 以外的内容
查看>>
.NET平台开源项目速览(9)软件序列号生成组件SoftwareProtector介绍与使用
查看>>
简述Session 、Cookie、cache 区别
查看>>
large-scale analysis of malware downloaders
查看>>
FMX 模态窗体
查看>>
C语言编程规范—命名规则
查看>>
Java集合源码分析(二)Linkedlist
查看>>
sqlplus: error while loading shared libraries: /u01/app/lib/libclntsh.so.11.1
查看>>
dubbo工作原理
查看>>
maven_项目的依赖、聚合、继承
查看>>
一个C++类的注释:
查看>>
Winsock IO模型之select模型
查看>>
flutter安装开发环境-问题记录
查看>>
渲染机制/页面性能/错误监控
查看>>
前端构建_webpack
查看>>
程序员如何优雅的记录笔记(同步云端,图床,多端发布)
查看>>