曲线数据最大值最小值自适应解决方法:
(注意:只在数值轴中(type:‘value’)中有效)
yAxis: {
scale:true,根据数据自适应最大值最小值
},
或者:手动设置
yAxis: {
max:100, //刻度最大值
min:1,//刻度最小值
},
图表自适应页面的方法:
当页面只有一个图表的时候直接用 window.onresize = myChart.resize 就可以了
myChart.setOption(option);
window.onresize=()=>{
myChart.resize;
}
但是如果一个页面有多个图表的时候就需要用到 addEventListener 了,不然页面上只有一个图表会根据浏览器的变化而自适应。
myChart.setOption(option);
window.addEventListener("resize", () => {
myChart.resize();//resize 页面大小改变,调整大小
myChart2.resize();
myChart3.resize();
});
图表位置调整方法:
可以用 % 和 px 等单位
grid: {
left: "25",
right: "25",
bottom: "24",
top: "85",
},
饼图指示线长度设置:
series:{
labelLine: {
length: 10, //长度
length2: 20,//宽度
},
}
legend 图例不出的问题:
legend: {
show: true,//显示
},
如果还不显示就是没引入
//react 引入方式
import "echarts/lib/component/legend";
//js全局引入方式
<script src="echarts.min.js"></script>
图表数据残留问题解决方案:
当修改setOption值的时候,我们异步回来的数据层级比较深的情况下,需要echarts重绘,否则不会如愿显示,主要体现,你增加数据可以,但是减少数据,发现视图上还是保持着最多数据的展示效果
myChart.setOption(option, true); 加上true
设置为 true 的话,就是notMerge,不合并
设置为 false 的话,就Merge,之前的东西还保留
官方文档:
chart.setOption(option, notMerge, lazyUpdate);
notMerge 可选,是否不跟之前设置的 option 进行合并,默认为 false,即合并。
xAxis,legend,series下的data 要的数据格式:
data:["1","2","3","4","5"]
会就行更新常见问题问题