Loading

echarts不同图表的配置项解释【1】

通用配置

配置项

var option = {
  // 标题设置
      title: { 
        text: '成绩展示', // 标题文字
        textStyle: { // 标题文字样式设置
          color: 'red'
        },
        left: '50%', // 标题距离左边的距离
        top: 10 // 标题距离顶部的距离
      },
      // 工具提示
      tooltip: { 
        trigger: 'axis', //工具提示的类型
        formatter: function(arg){ // 文字格式化
          return arg[0].name + '的分数是:' + arg[0].data
        }
      },
      // 工具箱按钮
      toolbox: { 
        feature: {
          saveAsImage: {}, // 导出图片
          dataView: {}, // 数据视图
          restore: {}, // 重置
          dataZoom: {}, // 区域缩放
          magicType: {
            type: ['line', 'bar']
          } // 动态图表类型的切换
        }
      },
      // 图例, 可以帮助我们对图表进行筛选
      legend: { 
        // data: ['语文', '数学'],  data中可以不指定,他会自动获取series中对象的name属性值
        left: 10
      },
      // 图表颜色
      color:['green','orange'],
      xAxis: {
        type: 'category',
        data: ['张三', '李四', '王五', '闰土', '小明', '茅台', '二妞', '大强']
      },
      yAxis: {
        type: 'value'
      },
      series: [
        {
          name: '语文',
          type: 'bar',
          data:  [88, 92, 63, 77, 94, 80, 72, 86]
        },
        {
          name: '数学',
          type: 'bar',
          data:  [90, 67, 34, 78, 99, 80, 78, 56]
        }
      ]
    }

效果图

直角坐标系

配置项


    var option = {
      // 坐标轴容器,用来控制直角坐标系的大小
      grid: { 
        show: true, // 是否可见
        left: 120, // 边框的位置
        top: 120,
        width: 400,
        height: 150
      },
      xAxis: {
        type: 'category',
        data: ['张三', '李四', '王五', '闰土', '小明', '茅台', '二妞', '大强']
      },
      yAxis: {
        type: 'value',
        // 设置y轴的位置
        position: 'right',
        // 坐标轴刻度相关设置
        axisLabel:{
          // 刻度标签显示的内容
          formatter: (value,index) => index+'所对应的值为'+value
        }
      },
      series: [
        {
          name: '语文',
          type: 'bar',
          // 图表上的文本标签设置
          label: {
            show: true,
            rotate: 60,
            position: 'top'
          },
          // 柱条的宽度
          barWidth: '50%',
          data: [88, 92, 63, 77, 94, 80, 72, 86]
        }
      ],
      // 区域缩放
      dataZoom:[
        {type:'slider',yAxisIndex:0,start:60,end:90},  // 通过滑块来筛选y轴上的数据
      ]
    }

效果图

柱状图

配置项

var option = {
      // 标题组件
      title: {
        text: '成绩',     // 标题文字
        link: 'http://www.itcast.cn',   // 标题超链接
        textStyle: {      // 标题样式设置
          color: 'red'  
        }
      },
      // x轴
      xAxis: {
        // 如果指定了x(或者y)为类目轴,那么会将xAxis.data(或yAxis.data)的数据作为x(或y)轴的刻度
        type: 'category',  // 指明x轴为 类目轴
        data: ['小明', '小红', '小王'],
        // 坐标轴设置
        axisLine:{
          show: true,  // 是否显示坐标轴
          // 坐标轴样式
          lineStyle:{
            color: 'green',    //坐标轴颜色设置
          }
        },
        // 坐标轴刻度设置
        axisTick:{
          show: false,      // 不显示刻度
        },
        // 刻度标签
        axisLabel:{
          show:true,      //显示刻度标签
          color: 'orange',   
        }
      },
      yAxis: {
        type: 'value',  // 指明x轴为 数值轴, 指明数值轴之后, 无需指定data,其会根据series中对象的data进行设置
        // 分割线
        splitLine: {
          show: false,   //不显示分割线
        }
      },
      series: [
        {
          name: '语文', // 为图表起一个名称
          type: 'bar', // 指明该图标类型为 柱状图
          data: [70, 92, 87], // 为x轴的每一个元素, 指明呈现在y轴的数值
          // 图表标注
          markPoint:{
            data:[
              // {type:'min',name:'最小值'},
              // {type:'max',name:'最大值'}
            ]
          },
          // 图表标线
          markLine:{
            data:[
              {type:'average',name:'平均值'}
            ]
          },
          // 图表上的文本标签
          label:{
            show:true,
            rotate: 30,
            position: 'top' 
          },
          // 柱条的宽度
          barWidth: '20%'
        }
      ]
    }

效果图

折线图

配置项


    var option = {
      xAxis: {
        type: 'category',
        data: ['1月', '2月', '3月', '4月', '5月', '6月', '7月'],
        // 坐标轴上的刻度是否和刻度标签是否不重合
        boundaryGap: false
      },
      yAxis: {
        type: 'value',
        // 是否在数值轴上包含0刻度
        scale: true
      },
      series: [
        {
          name: '康师傅',
          data: [3000, 2800, 900, 1000, 800, 700, 1400],
          type: 'line', 
          // 填充样式
          areaStyle:{
            color: 'pink'
          },
          // 是否平滑显示
          smooth: true,
          // 区域标记
          markArea: {
            data: [
              // 对x轴为3月到4月进行标记
              [
                {xAxis: '3月'},
                {xAxis: '4月'}
              ]
            ]
          },
          // 线条样式
          lineStyle:{
            color:'red',
            type: 'dotted'
          }
        }
      ]
    }

效果图

饼状图

配置项

option = {
  // 图例组件。
  // 作用:可以通过点击图例控制哪些系列不显示。
  legend: {
    top: '5%'
  },
  // 提示框组件
  // 作用:鼠标移动到图表上提示的文字信息
  tooltip: {
    trigger: "item",
    formatter: "{a} <br/>{b} : {c} ({d}%)"
  },
  // 调色盘列表
  // 作用:调节图表的颜色
  color:[
    "#006cff",
    "#60cda0",
    "#ed8884",
    "#ff9f7f",
    "#0096ff",
    "#9fe6b8",
    "#32c5e9",
    "#1d9dff"  
  ],
  // 工具箱组件。
  // 作用:可以导出图片,数据视图,动态类型切换,数据区域缩放,重置
  toolbox: {
    show: false,
    feature: {
      mark: { show: true },
      dataView: { show: true, readOnly: false },
      restore: { show: true },
      saveAsImage: { show: true }
    }
  },
  // 系列组件
  // 作用:设置图表的类型
  series: [
    {
      name: 'Nightingale Chart',
      // 饼状图
      type: 'pie',
      // 设置半径,值为数组时分别表示内圆半径、外圆半径
      radius: [30, 160],
      // 饼图中心位置
      center: ['50%', '50%'],
      roseType: 'area',
      // 图形样式设置
      itemStyle: {
        borderRadius: 0,
        // color: 'orange',  //图形的背景颜色
      },
      // 数据
      data: [
        { value: 40, name: 'rose 1' },
        { value: 38, name: 'rose 2' },
        { value: 32, name: 'rose 3' },
        { value: 30, name: 'rose 4' },
        { value: 28, name: 'rose 5' },
        { value: 26, name: 'rose 6' },
        { value: 22, name: 'rose 7' },
        { value: 18, name: 'rose 8' }
      ],
      // 饼型图上的本文标签
      label:{
        show:true,
        position: 'outside',   //文本出现的位置
        color: 'red'
      },
      // 引导线
      labelLine:{
        show: true,
        length: 6,     // 第一根线的长度设置
        length2: 30    // 第二根线的长度设置
      }
    }
  ]
};

效果图

散点图

配置项

option = {
  xAxis: {
    type:'value',
    scale: true
  },
  yAxis: {
    type: 'value',
    // 不包含0刻度
    scale:true
  },
  series: [
    {
      symbolSize: 10,     //散点的大小
      // 
      data: [
        [10.0, 8.04],
        [8.07, 6.95],
        [13.0, 7.58],
        [9.05, 8.81],
        [11.0, 8.33],
        [14.0, 7.66],
        [13.4, 6.81],
        [10.0, 6.33],
        [14.0, 8.96],
        [12.5, 6.82],
        [9.15, 7.2],
        [11.5, 7.2],
        [3.03, 4.23],
        [12.2, 7.83],
        [2.02, 4.47],
        [1.05, 3.33],
        [4.05, 4.96]
      ],
      // type: 'scatter',
      // 涟漪特效的散点图
      type: 'effectScatter',
      // 图表样式
      itemStyle:{
        // 控制散点的样式
        color:args =>{
          console.log(args)
          if(args.data[0]>10){
            return 'red'
          }else{
            return 'green'
          }
        }
      },
      // 何时显示涟漪效果
      showEffectOn:'render',
      // 涟漪样式设置
      rippleEffect:{
        color: 'orange'
      }
    }
  ]
};

效果图

posted @ 2022-06-26 22:42  ^Mao^  阅读(149)  评论(0编辑  收藏  举报