ECharts大数据量渲染性能优化指南
创作时间:
作者:
@小白创作中心
ECharts大数据量渲染性能优化指南
引用
CSDN
1.
https://blog.csdn.net/m0_74019046/article/details/139276507
当ECharts需要处理大量数据时,性能优化变得尤为重要。本文将介绍三种有效的优化方案:使用large优化、渐进渲染(progressive)以及appendData方法。通过这些技术手段,可以显著提升ECharts在大数据量场景下的渲染性能。
使用large优化
当数据量过大时,ECharts的渲染速度会明显下降。为了解决这个问题,ECharts提供了large优化选项。启用large优化后,ECharts会自动进行一些性能优化,但需要注意的是,此时将无法自定义设置单个数据项的样式。
largeThreshold参数
largeThreshold参数用于设置开启绘制优化的阈值。当数据量超过这个阈值时,ECharts会自动启用优化策略。
series: [
{
large: true,
largeThreshold: 2000, // 在2000时开启优化
type: "scatter",
name: "line",
data: data,
},
],
使用渐进渲染(progressive)
渐进渲染是ECharts默认开启的一种优化策略,通过分批次渲染数据来提升性能。开发者可以通过调整相关参数来优化渲染效果。
progressive参数
progressive参数用于设置每一帧绘制的图形数量。合理设置这个参数可以平衡渲染速度和视觉效果。
series: [
{
progressive: 5000,
type: "scatter",
name: "line",
data: data,
},
],
progressiveThreshold参数
progressiveThreshold参数用于设置启用渐进式渲染的图形数量阈值。当数据量超过这个阈值时,ECharts会自动启用渐进渲染。
progressiveChunkMode参数
progressiveChunkMode参数用于设置分片渲染的模式,有两种可选值:
sequential:按照数据的顺序分片。缺点是渲染过程不自然。mod:取模分片,即每个片段中的点会遍布于整个数据,从而能够视觉上均匀得渲染。
series: [
{
progressive: 5000,
progressiveChunkMode: "mod",
type: "scatter",
name: "line",
data: data,
},
],
使用appendData
appendData方法允许在不重新渲染整个图表的情况下,动态添加数据。这对于需要实时更新数据的场景非常有用。
appendData与resize
使用appendData添加数据后,不会触发整个图表的重新渲染。如果需要重新渲染,可以调用resize()方法。而setOption方法则会触发整个图表的重新渲染。
let data = [];
let data1 = [];
let now = 0;
let current = 0;
for (let i = 0; i < 100000; i++) {
if (now < 5000) {
data1.push({
value: i,
});
now++;
} else {
data.push(data1);
data1 = [];
now = 0;
}
}
series: [
{
progressive: 5000,
progressiveChunkMode: "mod",
type: "scatter",
name: "line",
data: data[0],
},
],
myEcharts.on("finished", () => {
current++;
if (current < data.length) {
myEcharts.appendData({
seriesIndex: 0,
data: data[current],
});
myEcharts.resize();
}
});
热门推荐
《731》引发争议,银幕上的历史较量!
木棉属植物百科:分布区域、特征与用途解析
汽车玻璃清洁用品大比拼:玻璃水 vs 玻璃精
长痘痘该怎么办
处在不同病程阶段的阿尔茨海默病患者,该如何选择非药物干预项目?
文科生可以学习计算机编程吗?
持续擦亮中国高铁“金名片” 从中车长客看中国轨道交通装备自主创新之路
《漫威超级战争》奇异博士技能攻略:时空掌控者的战斗指南
小米站在“蔚小理”的肩膀上
如何缓解大拇指震颤
沉浸式体验《又见平遥》,感受山西历史韵味
基金分红方式选哪个好?
探秘陌生猫咪亲近的秘密(从行为举止到情感反应,了解猫咪亲近人类的原因)
如何突破减重平台期:综合建议与调整策略
金鱼白点病怎么治最快
什么时候摇号?摇号购车全讲解
广州入秋成功?鲤工仔穿搭指南来了
情感纠纷在哪里可以调解:法律途径与适用范围解析
如何处理玻璃表面的划伤问题?针对不同划伤程度有哪些处理方法?
防火门与防火卷帘的安装与维护指南
宋仁宗赵桢的无为之治,是如何在短短十几年中创造出千古盛世的?
宋仁宗时期:北宋王朝的黄金时代
紫外线 (UV) 辐射
外汇买卖手续费:影响交易成本的因素
博尔特的最速秘密?从巴黎奥运新跑道看「红&蓝」对运动赛事影响
乒乓球世界排名更新:林诗栋成新王,孙颖莎刷新记录,蒯曼成为第五人
国际乒联最新世界排名,樊振东、陈梦依然在列
配位键强弱的判断方法(高中化学)
买车贷款提前还款全攻略:如何查看提前还款金额?
白蛇故事的演变