zoukankan      html  css  js  c++  java
  • Echarts正负值在同侧

    vue项目加Echarts

    效果图:

    代码实现如下

    <template>
      <div id="money"></div>
    </template>
    
    <script>
      export default {
        name: "Echarts",
        data(){return{}},
        mounted(){
           this.draw()
        },
        methods:{
          draw(){
            var myEcharts = this.$echarts.init(document.getElementById('money'));
            var data = [23, 22, 21, 18, 15, 13, 10 ,-13,-18,-20];
            var displayData = data.map(v => Math.abs(v));
            var color1 = new this.$echarts.graphic.LinearGradient(0, 0, 0, 1,
              [
                {offset: 0, color: '#348eda'},
                {offset: 0.5, color: '#2f98f4'},
                {offset: 1, color: '#2c9eff'}
              ]);
            var color2 = new this.$echarts.graphic.LinearGradient(0, 0, 0, 1,
              [
                {offset: 0, color: '#ff7157'},
                {offset: 0.5, color: '#f5402e'},
                {offset: 1, color: '#f12b2a'}
              ]);
            var option = {
              tooltip : {
                trigger: 'axis',
                axisPointer : {            // 坐标轴指示器,坐标轴触发有效
                  type : 'shadow'        // 默认为直线,可选为:'line' | 'shadow'
                }
              },
              grid: {
                left: '3%',
                right: '4%',
                bottom: '10%',
                top:'20%',
                containLabel: true
              },
              xAxis : [
                {
                  type : 'category',
                  data: data,
                  axisTick: {show:false},
                  axisLine:{show:false},
                  axisLabel:{
                    interval:0,
                    rotate:30,
                    color:'#fff'
                  }
                }
              ],
              yAxis : [
                {
                  type : 'value',
                  name:'(万元)',
                  nameTextStyle:{color:'#fff'},
                  splitLine:{show:false},//刻度线
                  axisTick:{show:false},//轴线
                  axisLine:{show:false},
                  axisLabel:{color:'#fff'}
                }
              ],
              series: {
                // name:'直接访问',
                type: 'bar',
                barWidth: '60%',
                data: displayData,
                label: {
                  normal: {
                    show: true,
                    position: 'top',
                    textStyle: { //数值样式
                      color: '#fff',
                      fontSize: 14
                    },
                    formatter: function (p) {
                      return data[p.dataIndex] > 0 ? ('+' + p.value) : ('-' + p.value);
                    }
                  }
                },
                itemStyle: {
                  normal: {
                    color: function (p) {
                      if(data[p.dataIndex] > 0){
                      return color1;
                      } else {
                        return color2
                      }
                    },
                  }
                }
              }
            };
            myEcharts.setOption(option)
          }
        }
      }
    </script>
    
    <style scoped>
    #money{
      width: 100%;
      height: 100%;
    }
    </style>

     新增内容:tooltip的拼接

    tooltip : {
                trigger: 'axis',
                axisPointer : {            // 坐标轴指示器,坐标轴触发有效
                  type : 'shadow'        // 默认为直线,可选为:'line' | 'shadow'
                },
                formatter:function (p) {
                  console.log(data[p[0].dataIndex])
                  if (data[p[0].dataIndex] > 0){
                    return "<span>"+p[0].name +" "+"+"+ p[0].value + " " +"<span>万元</span>";
                  }else{
                    return "<span>"+p[0].name +" "+"-"+ p[0].value + " " + "<span>万元</span>";
                  }
                }
              },
  • 相关阅读:
    苹果的HomeKit协议
    广州出游计划
    Qt学习博客推荐
    Log4Qt使用(三)在DailyRollingFileAppender类中增加属性mMaxBackupIndex
    QT中关于窗口全屏显示与退出全屏的实现
    键盘事件-----按下回车键则触发事件
    窗体显示/编码设置/开机启动/文件选择与复制/对话框等
    设置系统日期时间
    输入内容, 列出可选的项: QComboBox
    如何根据安装时缺失的文件查找对应的包
  • 原文地址:https://www.cnblogs.com/keai/p/11376971.html
Copyright © 2011-2022 走看看