百度eCharts如何将负值标签显示为正值?

时间:2019-02-06 23:52:02

标签: echarts

我正在使用ECharts Baidu生成图表。我正在使用龙卷风图表来显示左右臂的力量。左臂的力显示在左侧,右臂的显示在右侧。有没有办法将标签的负值和轴显示为正值?我总是可以隐藏轴值,只要解决方案可以使图形显示负数作为正标签,我就将其标记为解决方案。

https://echarts.baidu.com/echarts2/doc/example/bar5.html#-en

var option= {
        title: {
        },
        grid: {
          top: '10%',
          bottom: '25%',
          left: '20%',
          right: '10%',
        },
        tooltip: { triggerOn: 'click' },
        xAxis: [
          {
            type: 'value',
            name: 'Newton',
            nameLocation: 'center',
            nameTextStyle: {
              padding: 10
            },
          }
        ],
        yAxis: [
          {
            axisTick: { show: false },
            data: ['FEB']
          }
        ],
        barWidth: 40,
        series: [
          {
            type: 'bar',
            stack: 'feb',
            label: {
              normal: {
                show: true,
                position: 'top',
              }
            },
            data: [{ value: Number(data2[0].left) * -1 }],  //the value is from the ajax call
            itemStyle: { color: 'gray' }
          },
          {
            type: 'bar',
            stack: 'feb',
            label: {
              normal: {
                show: true,
                position: 'top'
              }
            },
            data: [Number(data2[0].right)],
            itemStyle: { color: '#F26718' },
          },
        ],
        textStyle: {
          fontWeight: 'bold',
          color: 'black'
        }
      }
      chart.setOption(option);
    })

enter image description here

1 个答案:

答案 0 :(得分:0)

尝试一下:

label: {
    normal: {
        show: true,
        position: 'top',
        formatter: function (params) {
            return Math.abs(params.value[1]);
        }
    }   
}

此示例假定您传递到图表的数据是一个数组,如[x,y]。如果您输入的数据不同,请在格式化程序函数中放置一个断点,以了解“参数”的结构。