今天给大家说一个用echarts渲染一个风向图,这里图上其实有三个要素,风向,风级和能见度,主要还是讲讲代码里面的坑
1.风向图标方向修改以及设置
这里的ownData 包括了一个value和symbolRotate,第一个是风级的数值,第二个则是角度,官方说symbolRotate:windDir[index],但是会发现图标的方向不对,于是自己根据实际展示需要做了调整,前面用360来减去对应的角度值
echarts官方是再series中的markPoint设置
2.自定义tooltip显示内容
tooltip: { formatter: function(params) {
将dataZoom设置取消,因为会发现设置之后,对应值会报错,说value未找到,并且上下的数据横轴对应不齐
4.所有节点数据都显示出来
echarts默认会根据div的宽度来展示数据节点名称,如果向全部显示,再series设置showAllSymbol: true,即可
最近再一次遇到了做风向图的需求,不过还添加了更多要显示的元素,比如温度,降水,能见度,不过我发现我之前的方法有个问题,就是tooltip显示有问题,鼠标划到风级tooltip显示正常,但是划到能见度那块儿,tooltip显示的不对,元素和数据会错位,于是自己在此基础上,做了一个完美的改善方案,并且还可以设置dataZoom来拖拽,代码如下,这里我只写渲染代码,数据的话,自己处理后传入即可!
其中daytu就是要传入的数据,包含了温度,降水,能见度,风向,风速5个元素的值,可能大家的数据返回和我的不一样,这个自己针对自己的数据处理即可,重点在如何渲染Echarts图上
THE END