v-charts x轴字体斜显示

以下图,由于X轴内容太多,放不下,插件默认间隔显示
需求:X轴内容要所有显示出来(只有斜显示或固定宽多余的用省略代替,原本须要就是想显示所有内容,因此只能取斜显示的方案)数组

先看看v-charts的文档:echarts

经过extend属性实现对已配置好的内部属性进行单独的设置, extend为对象类型,对象内的属性能够是函数,也能够对象,也能够是其余类型的值函数

  • 当属性为函数时,设置的是函数的返回值
  • 当属性为对象时,若是在options中对应的属性为对象(eg: tooltip)或包含对象的数组(eg: series), 对应的配置会被合并,不然将直接覆盖对应的配置

 用法以下:字体

this.chartExtend = {
        series (v) {
          v.forEach(i => {
            i.barWidth = 10
          })
          return v
        },
        tooltip (v) {
          v.trigger = 'none'
          return v
        }
      }
      /* 等同于
        this.chartExtend = {
          series: {
            barWidth: 10
          },
          tooltip: {
            trigger: 'none'
          }
        }
        等同于
        this.chartExtend = {
          'series.0.barWidth': 10,
          'series.1.barWidth': 10,
          'tooltip.trigger': 'none'
        }
      */

============================================================================this

回到上面的需求上,要实现这个效果,也须要用到formatter格式化方法,效果以下图(红框X轴名称)
spa

很少说,直接上代码:插件

<template>
  <ve-histogram
    :data="chartData"
    :extend="chartExtend">
  </ve-histogram>
</template>

<script>
  export default {
    data () {
       this.chartExtend = {
         // 柱子宽度
          series: {
            barWidth: 10
          },
         // x轴字体斜显示
         xAxis: {
           axisLabel: {
             margin: 15,
             interval: 0,
             rotate: 30,
             formatter: name => {
               // eslint-disable-next-line
               return echarts.format.truncateText(name, 100, '14px Microsoft Yahei', '')
             }
           },
           triggerEvent: true
         }
        }
      return {
        chartData: {
          columns: ['日期', '成本', '利润'],
          rows: [
            { '日期': '1月1日', '成本': 15, '利润': 12 },
            { '日期': '1月2日', '成本': 12, '利润': 25 },
            { '日期': '1月3日', '成本': 21, '利润': 10 },
            { '日期': '1月4日', '成本': 41, '利润': 32 },
            { '日期': '1月5日', '成本': 31, '利润': 30 },
            { '日期': '1月6日', '成本': 71, '利润': 55 },
            { '日期': '1月6日', '成本': 21, '利润': 45 },
            { '日期': '1月7日', '成本': 31, '利润': 35 },
{ '日期': '1月8日', '成本': 11, '利润': 35 },
{ '日期': '1月9日', '成本': 51, '利润': 35 }
]
 } } } } </script>
相关文章
相关标签/搜索