grafana中使用Echarts 可视化

grafana中使用Echarts 可视化

博客地址: https://b.top1.pub/

安装
  1. 安装echars插件
    grafana-cli plugins install bilibala-echarts-panel
  2. 重启grafana-server 服务
  3. 新建panel时,便可看到Echarts信息

image-20211013111609750

使用柱状图
  1. 查询数据通过data获取到echarts

      const series = data.series.map((s) => {
      const sTotal = s.fields.find((f) => f.name === 'total').values.buffer;
      const sBind = s.fields.find((f) => f.name === 'binded').values.buffer;
      const sQuarter = s.fields.find((f) => f.name === 'quarter').values.buffer;
      const sbindRate = s.fields.find((f) => f.name === 'bind_rate').values.buffer;
      return {total:sTotal,binded:sBind,quarter:sQuarter,bindRate:sbindRate}
    })
    
  2. 设置图表样式

    option = {
      title: {
        text: '使用占比'
      },
      tooltip: {
        trigger: 'axis',
        axisPointer: {
          type: 'cross',
          crossStyle: {
            color: '#999'
          }
        }
      },
      toolbox: {
        feature: {
          dataView: { show: true, readOnly: false },
          magicType: { show: true, type: ['line', 'bar'] },
          restore: { show: true },
          saveAsImage: { show: true }
        }
      },
      legend: {
        data: ['总数', '使用数', '使用占比']
      },
      xAxis: [
        {
          type: 'category',
          data: series[0].quarter,
           axisPointer: {
             type: 'shadow'}
        }
      ],
      yAxis: [
        {
          type: 'value',
          name: '总班级',
    //       min: 0,
    //       max: 10000,
    //       interval: 5000,
          axisLabel: {
            formatter: '{value}'
          }
        },
        {
          type: 'value',
          name: '使用占比',
    //       min: 0,
    //       max: 25,
    //       interval: 5,
          axisLabel: {
            formatter: '{value} %'
          }
        }
      ],
      series: [
        {
          name: '总数',
          type: 'bar',
          barWidth: '20%',
          data:series[0].total,
          barGap: '-100%'
        },
        {
          name: '使用数',
          type: 'bar',
          barWidth: '20%',
          data: series[0].binded
        },
        {
          name: '占比',
          type: 'line',
          yAxisIndex: 1,
          data: series[0].bindRate
        }
      ]
    };
    
    1. 配置参数

      echartsInstance.setOption(option);
      
  • 2
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值