项目里有个这样的需求
1、根据表格数据(接口返回的)组成echarts折线图表
2、折线图表里,有4条线是固定的。根据表格中的项目,显示折线(有几个项目,就显示几条线,项目的个数是不固定的)
思路
1、根据接口渲染表格
2、创建echarts轮廓
3、创建至少5个数组,从表格中拿到四个固定值(最好遍历填充,免得后期发生变化)存放数组中,拿到时间在组成一个数组,还有其他的变量需要存储
4、因为线条(项目)个数不确定,那么,图表的series
就不能写死,标题就不能写死(动态这里是难点、重点)
这里没有可以直接拿到官网上运行的代码,因为这里需要根据接口返回的数据进行操作
实现
1、思路-步骤2创建echarts轮廓
// css里设置echarts样式
<div class="echarts">
<div echarts [options]='option1' style="width: 100%; height: 100%;"></div>
</div>
echarts() {
this.option1 = {
// 具体有多少线还不确定,这里先设置个颜色数组
color: ['#ff8b00', '#ff8b00', '#fa3312', '#fa3312', '#1890FF', '#2c93f1', '#4bc62d', '#f6c914', '#e56092', '#6cd4c9', '#5f9ce7', '#c599ca', '#f4989d', '#Oeaabc', '#7fc3e6',
],
tooltip: {
trigger: 'axis',
axisPointer: {
type: 'cross',
crossStyle: {
color: '#999'
}
}
},
grid: {
left: '3%',
right: '4%',
bottom: '3%',
containLabel: true
},
legend: {
itemHeight: '5',
// data不写的情况的,会根据series里的name自动生成,因此这里不能写死
// data: ['预警值上限', '亚安全上限', '亚安全下限', '预警值下限', '测值']
},
// 时间数组值放到这里
xAxis: {
type: 'category',
data: this.timeList,
axisPointer: {
type: 'shadow'
},
axisTick: {
show: false,
},
},
yAxis: [
{
type: 'value',
axisLabel: {
show: true,
textStyle: {
color: 'black&#