echarts渲染大量数据 sandiantu
时间: 2023-06-28 20:15:08 浏览: 197
对于大量数据的散点图,我们可以采用 echarts 中的数据分块加载方式进行渲染,这样可以有效减少渲染的时间和内存占用。以下是使用数据分块加载方式绘制散点图的一些步骤和配置项:
1. 在使用 echarts 绘制散点图时,需要将数据分块后绑定到散点图的数据源中。可以使用 echarts 提供的 `dataZoom` 组件实现数据分块加载方式。
2. 在配置项中配置 `dataZoom` 组件的相关属性,如 `start` 和 `end` 属性来控制数据的加载范围。
3. 在配置项中配置 `visualMap` 组件的相关属性,如 `min` 和 `max` 属性来控制散点图的颜色显示范围。
4. 如果散点图中数据点过多,可以使用 echarts 的 `symbolSize` 属性来控制数据点的大小,从而避免数据点之间的重叠。
下面是一个示例代码,具体实现可以根据自己的需求进行调整:
```javascript
option = {
xAxis: {},
yAxis: {},
dataZoom: {
type: 'slider',
show: true,
start: 0,
end: 50
},
visualMap: {
min: 0,
max: 100,
calculable: true,
inRange: {
color: ['#50a3ba', '#eac736', '#d94e5d']
},
textStyle: {
color: '#fff'
}
},
series: [{
type: 'scatter',
data: data,
symbolSize: function (value) {
return Math.sqrt(value[2]) / 5e2;
},
label: {
emphasis: {
show: true,
formatter: function (param) {
return param.data[3];
},
position: 'top'
}
},
itemStyle: {
normal: {
shadowBlur: 10,
shadowColor: 'rgba(120, 36, 50, 0.5)',
shadowOffsetY: 5,
color: new echarts.graphic.RadialGradient(0.4, 0.3, 1, [{
offset: 0,
color: 'rgb(251, 118, 123)'
}, {
offset: 1,
color: 'rgb(204, 46, 72)'
}])
}
}
}]
};
```
以上代码中,数据源 `data` 应该是一个数组,每个元素代表一个散点的位置和大小信息,例如:
```javascript
var data = [
[10.0, 8.04, 10],
[8.0, 6.95, 20],
[13.0, 7.58, 30],
[9.0, 8.81, 40],
[11.0, 8.33, 50],
[14.0, 9.96, 60],
[6.0, 7.24, 70],
[4.0, 4.26, 80],
[12.0, 10.84, 90],
[7.0, 4.82, 100],
[5.0, 5.68, 110]
];
```
其中,每个元素的前两个数值代表散点的 x 和 y 坐标,第三个数值代表散点的大小。
阅读全文