echarts

本文探讨了ECharts在首屏渲染时获取宽度的问题,以及如何实现元素的自适应填充。针对宽度过早计算导致的图像模糊,提出了CSS解决方案。同时,文章还涉及ECharts的提示框背景色设置、数据重新加载时的保留旧数据问题,以及X轴数据更新的处理策略。

echarts使用过程中的问题

  1. echarts首屏渲染的宽度获取
    echarts页面内有多个echarts图形,宽度通过自适应设置百分比和flex。
    在这里插入图片描述
    这是eharts渲染到页面的元素,绘图时向目标元素内添加一个div包裹canvas
  • 猜测跟元素的加载渲染顺序有关,子元素在初始化绘图时,拿不到正确的父元素宽度,但是设置this.$nextTick宽度依旧不对。
  • 设置setTimeout延迟执行在时间为100ms时几乎充满父元素。
  • 继续寻找最优方案解决。
  1. echarts渲染图文模糊
    上面为实现echarts生成的子元素div和canvas能自适应充满父元素,css作如下设置。
#chart {
	div {
		width: 100%!important;// 优先级
		canvas {
			width: 100%!important;
		}
	}
}

由于刚开始的加载拿不到正确的宽度,会按照echarts默认设置的百分比直接作为像素渲染,但css对通过js绘制好的canvas宽度设置,拉伸了canvas图像,导致canvas像素失真,模糊的问题。

  • echarts的tooltip背景色,如何使用渐变色呢,待探索。
  1. echarts 数据重新加载,原数据依然存在图表上的问题

这是因为多次调用时option选项默认是合并(merge)的,加上true表示不合并配置
myChart.setOption(option,true);

  1. echarts rich使用backgroundColor加载图片
    不需要添加image://,直接加载图片
  2. echarts 更改xAxis的data,不刷新问题
    因为xAxis或者yAxis,在初始化的时候赋值为一个对象,而刷新数据的时候只是刷新xAxis的data部分,这个时候xAxis是找不到数组中到底哪个数据在刷新;
    因此,你可以直接修改整个xAxis的值,而不是xAxis.data
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值