使用V-chart时配置踩过的一些坑

野性酷女 2021-10-01 07:12 785阅读 0赞

如何配置图表信息

echart的配置项可谓是相当的海量,能不看就不看。而v-chart对其进行了不少的简化,所以我们想要自定义一个图表时,最好按照以下步骤来检查:

图表私有属性

v-chart每一个图表都有自己独有的设置项,想要配置这些项需要在组件上加入 :setting="chartSettings",然后在vue组建的data里设置chartSettings的值,如下:

  1. <template>
  2. <ve-line :data="chartData" :settings="chartSettings"></ve-line>
  3. </template>
  4. <script>
  5. export default {
  6. data () {
  7. this.chartSettings = {
  8. xAxisType: 'time'
  9. }
  10. return {
  11. chartData: {
  12. columns: ['日期', '访问用户'],
  13. rows: [
  14. { '日期': '2018-01-01', '访问用户': 1393 },
  15. { '日期': '2018-01-02', '访问用户': 3530 },
  16. { '日期': '2018-01-03', '访问用户': 2923 }
  17. ]
  18. }
  19. }
  20. }
  21. }
  22. </script>

图表公有属性

v-chart所有图表组件中共有的属性,直接在图标组件上挂载:属性名称="属性值"即可设置,下面是一些比较常用的






















































名称 类型 默认值 介绍
data Object 图表的显示数据
setting Object 图表的私有属性
height String 400px 高度
width String auto 宽度,默认根据高度自动适配
tooltip-visible boolean true 是否显示提示框
legend-visible boolean true 是否显示图例
extend Object 设置echart的详细属性

公共属性上最重要的可以说就是extend属性了,在vchart的公共属性里extend居然不在基本属性了,而是放在文档后面专门开了一段讲。当时为了找到这个属性可以说是废了老半天功夫。如果你在前两者中都没有找到想要的设置项,那就可以通过这个属性来设置echart的配置,毕竟是基于echart的嘛,所以echart的所有配置在这里都可以适用,下边是配置示例:

  1. <template>
  2. <ve-histogram :data="chartData" :extend="chartExtend"></ve-histogram>
  3. </template>
  4. <script>
  5. export default {
  6. data () {
  7. this.chartExtend = {
  8. series: {
  9. barWidth: 10
  10. },
  11. tooltip: {
  12. trigger: 'none'
  13. }
  14. }
  15. /* 等同于
  16. this.chartExtend = {
  17. series (v) {
  18. v.forEach(i => {
  19. i.barWidth = 10
  20. })
  21. return v
  22. },
  23. tooltip (v) {
  24. v.trigger = 'none'
  25. return v
  26. }
  27. }
  28. 等同于
  29. this.chartExtend = {
  30. 'series.0.barWidth': 10,
  31. 'series.1.barWidth': 10,
  32. 'tooltip.trigger': 'none'
  33. }
  34. */
  35. return {
  36. chartData: { ... }
  37. }
  38. }
  39. }
  40. </script>

Echart配置项

接下来就是重头戏了,如果你在前两者里都没有找到,那就只能从echart的配置项里找了,下面是一些目前比较常用的配置项





















名称 类型 介绍
legend Object 用于控制图表的图例组件,包括位置、样式、类型、图标等
series Object 每个图表的专属设置项,用于控制图表的详细样式位置等

其中series的属性就可以完成绝大多数配置了,下边是一个配置示例 实现的效果为:

  • 图例位于图表右方,且距右边缘20px
  • 图例颜色#A0A0A0,字体12px
  • 环图中心相对于左上角距离112px, s92px
  • 隐藏环图上的文本标签和引导线
  • 环图内半径55px与外半径72px

    //template

    //script
    data () {
    return {

    1. chartExtend: {
    2. series: {
    3. center: [112, 92]
    4. },
    5. legend: {
    6. right: 20,
    7. textStyle: {
    8. color: '#A0A0A0',
    9. fontSize: 12
    10. }
    11. }
    12. }
    13. chartSetting: {
    14. label: {
    15. show: false
    16. },
    17. labelLine: {
    18. show: false
    19. },
    20. radius: [55, 72]
    21. }

    }
    }

发表评论

表情:
评论列表 (有 0 条评论,785人围观)

还没有评论,来说两句吧...

相关阅读

    相关 python一些

    找完工作,又开始忙于做毕设,很久没更新博客了,不过博客新上线的这个新界面太不好用了,分类下只有两篇文章,每次点击进去都出现很多篇其他类的,每次找一篇博文都要翻很久。体验真是极差

    相关 Redis上一些-美团

    上上周和同事(龙哥)参加了360组织的互联网技术训练营第三期,美团网的DBA负责人侯军伟给大家介绍了美团网在redis上踩得一些坑,讲的都是干货和坑。     分为5个部分: