使用Echarts中是否有你想走的捷径???在使用Echarts少不了看官网中的案例和配置手册,但是案例都是众大多数中的多数,配置手册内容太多,面对疾如风、形如色的需求,开发人员总是会默默流下一行老泪,就用我走过的坑来铺一条捷径吧!折线图

前提说明:xAxis表示x轴,yAxis表示y轴,series表示数据区域

以官网案例中的基础面积图来示例:Examples - Apache ECharts

案例中的折线图已经很完美了,但是在实际中根据不同的需求要对此作出调整,比如:

(一)x轴方面的

1、轴刻度值:通过axisLabel来控制

devexpress 折线图x轴绑定数据 折线图xy轴怎么设置_坐标轴

axisLabel: {//坐标轴的刻度值
    textStyle: {
       color: 'red',//坐标值得具体的颜色
       fontSize: 10,
    }
}

2、x轴轴线:通过axisLine来控制

devexpress 折线图x轴绑定数据 折线图xy轴怎么设置_坐标轴_02

axisLine: {
        show: true,    // 是否显示坐标轴轴线
        lineStyle: {
            color: 'pink',    // 坐标轴线的颜色
            width: '1',    // 坐标轴线线宽
            type: 'solid',     // 坐标轴线线的类型('solid',实线类型;'dashed',虚线类型;'dotted',点                                        // 状类型)
        },
    },

3、刻度颜色和形状:通过axisTick控制

devexpress 折线图x轴绑定数据 折线图xy轴怎么设置_连线_03

axisTick: {//坐标轴刻度
        inside: true,//刻度标签朝内
        length: 1,//刻度标签长度
        lineStyle: {
            color: 'green',//刻度标签的颜色
            width: 3,//刻度标签的宽
            cap: 'round',//刻度标签的形状:round圆形,具体参考官网给的形状
        }
    },

4、x轴轴刻度线:通过splitLine来控制

devexpress 折线图x轴绑定数据 折线图xy轴怎么设置_数据_04

splitLine: {//坐标轴刻度线
        show: true,
        lineStyle: {
            color: '#000',    // 坐标轴线线的颜色
            width: '0.2',    // 坐标轴线线宽
            type: 'slide',
        }
    },

(二)y轴方面的:其实和x轴一样,区别在于需将配置写在yAxis里面,方可生效

1、y轴自定义轴刻度段,需要做以下配置

devexpress 折线图x轴绑定数据 折线图xy轴怎么设置_连线_05

max: 2000,    //设置最大值
  min: 0,  //最小值
  splitNumber: 4,//分割几段

(三)数据连线的线

devexpress 折线图x轴绑定数据 折线图xy轴怎么设置_大数据_06

 smooth: true,//连线的圆滑

 线的粗细和颜色

devexpress 折线图x轴绑定数据 折线图xy轴怎么设置_连线_07

itemStyle: {
  normal: {
     lineStyle: {//折线图连线的设置
     color: '#47B5FF',
     width: 1//设置线条粗细
     }
  }
},

(四)阴影面积

       通过areaStyle来控制,不添加任何内容,有自己默认的颜色,需要修改阴影面积颜色,通过color来修改

devexpress 折线图x轴绑定数据 折线图xy轴怎么设置_坐标轴_08

color: {
   x: 0,
   y: 0,
   x2: 1,
   y2: 0,
   colorStops: [{
      offset: 0, color: '#FFFFFF' // 0% 处的颜色
   },
   {
      offset: 1, color: '#47B5FF' // 100% 处的颜色
   }],
}

(五)最高点显示标签和圆点【难点】

devexpress 折线图x轴绑定数据 折线图xy轴怎么设置_坐标轴_09

 symbol:控制数据是否展示圆点

 label:控制是否展示提示文本

 formatter:标签内容格式器,详细用法参考文档

思路

     1、将数据抽离出去,每个添加一个symbol——none:无;circle:圆

     2、对抽离出去的数据进行数据筛选,选出最大值索引

     3、选出最大值给其添加样式并返回

var temp = [
    { value: 820, symbol: '' },
    { value: 932, symbol: '' },
    { value: 901, symbol: '' },
    { value: 934, symbol: '' },
    { value: 1290, symbol: '' },
    { value: 1330, symbol: '' },
    { value: 1320, symbol: '' }]

series中:

data: temp,//引用抽离的数据
label: {
   normal: {
     show: true,
     position: [10, -5],
     formatter: function (params) {
        let maxIndex = 0;
        for (let i in temp) {//获取最大值的索引
          maxIndex = temp[i].value > temp[maxIndex].value ? i : maxIndex
        }
        if (params.dataIndex == maxIndex) {//找到数组中最大的数,给其添加圆点和样式
          temp[params.dataIndex].symbol = "circle"
          temp[params.dataIndex].itemStyle = {
             normal: {
               color: '#60AFFF',
               borderColor: '#60AFFF',
             }
           }
           return `{resStyle|${params.data.value}}`

        } else {
          temp[params.dataIndex].symbol = "none"
          return ""
        }
      },
      rich: {//提示文本样式
        resStyle: {
          backgroundColor: '#47B5FF',
          color: "#fff",
          fontSize: 10,
          width: 22,
          height: 15,
          lineHeight: 15,
          boderWidth: 1,
          fontFamily: 'D-DIN',
          fontStyle: 'normal',
          fontWeight: 'normal',
          align: "center",
        }
       }
   }

},

       具体情况具体对待,在react项目中,需要重新渲染dom结构,使之变化。外多说一句,文档看起来头痛,为速战速决,可以先跨过文档直接按照需求百度