@dfsj/echarts
Version:
专业的水文曲线组件或构造函数以及通用的echart二次封装图表
51 lines (48 loc) • 1.42 kB
JavaScript
/**
*
* @dfsj/echarts: 专业的水文曲线组件或构造函数以及通用的echart二次封装图表
* 版本: v3.7.0-alpha.5
* 作者:yangbo <1747837358@qq.com>
* 日期:2025-11-21 13:30:34
*
*
*/
import * as echarts from 'echarts';
import WaterLayout from './waterLayout.js';
echarts.extendChartView({
type: 'water',
render: function render(seriesModel, ecModel, api) {
this.group.removeAll();
var sys = api.getCoordinateSystems()[0];
var data = seriesModel.getData();
var item = data.getItemModel(0);
var style = item.getModel('itemStyle');
var layout = item.get('data').map(function (p) {
return sys.convertToPixel(null, {
seriesModel: seriesModel
}, p);
});
var count = item.get('count');
var height = api.getHeight() - (item.get('grid.0.bottom') || 0);
for (var i = 0; i < count; i++) {
var water = new WaterLayout({
shape: {
height: height,
layout: layout,
speedX: item.get('speedX'),
speedY: item.get('speedY') + i / 1000,
amplitude: item.get('amplitude'),
wave: item.get('wave')
},
style: style.getItemStyle()
});
water.animate('shape', true).when(1000, {
phase: 1
}).start();
this.group.add(water);
}
},
dispose: function dispose() {
this.group.removeAll();
}
});