iis服务器助手广告
返回顶部
首页 > 资讯 > 精选 >如何使用vue实现柱形图
  • 499
分享到

如何使用vue实现柱形图

2023-07-05 01:07:56 499人浏览 薄情痞子
摘要

本篇内容介绍了“如何使用Vue实现柱形图”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!使用vue实现柱形图的方法:1、创建div属性为“&l

本篇内容介绍了“如何使用Vue实现柱形图”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!

使用vue实现柱形图的方法:1、创建div属性为“<div ref="BarChart" style="height: 1000px; width: 100%"/>”;2、通过“mounted(){this.fetchData()window.addEventListener('resize',()=>{if (this.chart){...}”实现立体柱状图即可。

vue 实现立体柱状图

样式如下图所示:
如何使用vue实现柱形图

可以将立体柱状图看做由yData+底+顶构成,对应代码如下:

<template>
 <div ref="BarChart" style="height: 1000px; width: 100%"/></template>

<script>import echarts from 'echarts'export default {  data() {    return {      chart: null,      data: [], //数据      xData: [], //x轴      yBarData: [], //y轴      yLable: [],      colorStops: [],      chartLegend: [], //图例      colorOptions: [ //图例以及柱形图颜色选择        '#5ba2e4',        '#f58510',        '#afa5a5',        '#facb3D',        '#0854cf',        '#48c611',        '#082b63'      ]    }  },  mounted() {    this.fetchData()    //图的大小自适应    window.addEventListener('resize',()=>{      if (this.chart){        this.chart.resize()      }    })  },  beforeDestroy() { //实例销毁之前调用    if (!this.chart) {      return    }    this.chart.dispose()    this.chart = null  },  methods: {    fetchData() {      this.xData = ["黑龙江",'辽宁','贵州','福建','湖北','河南','河北','山西','山东','天津','吉林','北京','内蒙古','云南']      this.yLable = ['10','20','30','40','50','60','70','80','90','100','110','120','130','140']      this.chartLegend = []      const dateArr = []      this.yLable.forEach((item, index) => {        if (item !== null && item !== undefined) {          dateArr.push(this.yLable[index])        }      })      this.chartLegend = dateArr      this.initData()      this.initChart()    },    initData() {      this.yBarData = this.yLable    },    initChart() {      this.chart = echarts.init(this.$refs.BarChart)      this.chart.clear() // 清空当前实例      let colors = []      const dom = 800      const barWidth = dom / 20      for (let i = 0; i < 4; i++) {        colors.push({          colorStops: [            {              offset: 0,              color: '#73fcff' // 最左边            }, {              offset: 0.5,              color: '#86eef1' // 左边的右边 颜色            }, {              offset: 0.5,              color: '#5ad6d9' // 右边的左边 颜色            }, {              offset: 1,              color: '#3dc8ca'            }]        })      }      this.chart.setOption({        backgroundColor: '#010d3a',        //提示框        tooltip: {          trigger: 'axis',          fORMatter: "{b} : {c}",          axisPointer: { // 坐标轴指示器,坐标轴触发有效            type: 'shadow' // 默认为直线,可选为:'line' | 'shadow'          }        },                grid: {          left: '10%',          right: '10%',          top: '10%',          bottom: '10%',        },        //X轴        xAxis: [{          data: this.xData,          type: 'cateGory',          show: true,          axisLine: {            show: false,            lineStyle: {              color: 'rgba(255,255,255,1)',              shadowColor: 'rgba(255,255,255,1)',              // shadowOffsetX: '20'            },            symbol: ['none', 'arrow'],            symbolOffset: [0, 25]          },          splitLine: {            show: false          },          axisTick: {            show: false          },          axisLabel: {            margin: 20,            fontSize: 10          }        }],        yAxis: {          show: true,          splitNumber: 4,          axisLine: {            show: false          },          splitLine: {            show: true,            lineStyle: {              type: 'dashed',              color: '#075858'            },          },          axisLabel: {            show: true,            color: '#FFFFFF',            margin: 30,            fontSize: 15          }        },        series: [          {//数据颜色            name: '日付费用户数',            type: 'bar',            barWidth: barWidth,            itemStyle: {              normal: {                color: (params) => {                  return colors[params.dataindex % 4];                }              }            },            label: {              show: true,              position: [barWidth / 2, -(barWidth + 20)],              color: '#ffffff',              fontSize: 14,              fontStyle: 'bold',              align: 'center'            },            data: this.yBarData          },          {//底            z: 2,            type: 'pictorialBar',            data: this.yBarData,            symbol: 'diamond',            symbolOffset: [0, '50%'],            symbolSize: [barWidth, barWidth * 0.5],            itemStyle: {              normal: {                color: (params) => {                  return colors[params.dataIndex % 4]                }              }            }          },          {//顶            z: 3,            type: 'pictorialBar',            symbolPosition: 'end',            data: this.yBarData,            symbol: 'diamond',            symbolOffset: [0, '-50%'],            symbolSize: [barWidth, barWidth * 0.5],            itemStyle: {              normal: {                borderWidth: 0,                 color: (params) => {                  return colors[params.dataIndex % 4].colorStops[0].color;                }              }            }          }        ]      }, true)    }  }}</script>

上述js代码中,有如下注意事项:

  • 颜色选择:可以将colors[params.dataIndex % 4]替换为this.colorOptions[params.dataIndex % 4],即使用代码中定义的colorOptions进行颜色填充

  • colorStops保证了立体的效果

  • 代码中colors[params.dataIndex % 4]中的4的选取是可变的,保证索引值在colors变量的长度范围内。例如:本例中colors长度为4,params.dataIndex % 4不超过4即可

引用上述barchart可应用如下代码:

<template>
 <bar-chart /></template>

<script>import barChart from "./components/barChart"export default {  name: 'barchart',  components: {  barChart }}</script>

“如何使用vue实现柱形图”的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识可以关注编程网网站,小编将为大家输出更多高质量的实用文章!

--结束END--

本文标题: 如何使用vue实现柱形图

本文链接: https://www.lsjlt.com/news/348892.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • 如何使用vue实现柱形图
    本篇内容介绍了“如何使用vue实现柱形图”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!使用vue实现柱形图的方法:1、创建div属性为“&l...
    99+
    2023-07-05
  • vue使用echarts实现立体柱形图
    本文实例为大家分享了vue使用echarts实现立体柱形图的具体代码,供大家参考,具体内容如下 立体柱形图是由前面、右面、上面三部分组成,绘制时需要先绘制前面为一个图形,右面和上面绘...
    99+
    2024-04-02
  • vue+echarts实现3D柱形图
    本文实例为大家分享了vue+echarts实现3D柱形图的具体代码,供大家参考,具体内容如下 1、安装echarts npm install echarts --save 2、引入...
    99+
    2024-04-02
  • vue怎么使用echarts实现立体柱形图
    今天小编给大家分享一下vue怎么使用echarts实现立体柱形图的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。立体柱形图是由...
    99+
    2023-06-29
  • vue+echarts怎么实现3D柱形图
    这篇文章主要介绍了vue+echarts怎么实现3D柱形图的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇vue+echarts怎么实现3D柱形图文章都会有所收获,下面我们一起来看看吧。效果如下:1、安装echa...
    99+
    2023-06-29
  • CSS如何实现柱形图效果
    这篇文章给大家分享的是有关CSS如何实现柱形图效果的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。   <ulclass="chart">   ...
    99+
    2024-04-02
  • vue基于echarts实现立体柱形图
    立体柱形图是由前面、右面、上面三部分组成,绘制时需要先绘制前面为一个图形,右面和上面绘制为一个图形,然后在echats中注册,在option的series中renderItem中渲染...
    99+
    2024-04-02
  • Vue echart如何实现柱状图,电池图,3D柱图和3D圆柱图
    这篇文章主要为大家展示了“Vue echart如何实现柱状图,电池图,3D柱图和3D圆柱图”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“Vue echart如何实现柱状图,电...
    99+
    2023-06-28
  • Vue Echarts实现带滚动效果的柱形图
    本文实例为大家分享了Vue Echarts实现带滚动效果柱形图的具体代码,供大家参考,具体内容如下 代码 <template>   <div class="time...
    99+
    2024-04-02
  • Vue使用Echarts实现立体柱状图
    本文实例为大家分享了Vue使用Echarts实现立体柱状图的具体代码,供大家参考,具体内容如下 预览: 代码: 页面部分: <template> <div ...
    99+
    2024-04-02
  • 如何用python绘制柱形图
    这篇文章主要介绍了如何用python绘制柱形图的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇如何用python绘制柱形图文章都会有所收获,下面我们一起来看看吧。#柱形图import pandasimp...
    99+
    2023-06-30
  • 怎么使用vue+echarts绘制折线图、柱状图和扇形图
    这篇“怎么使用vue+echarts绘制折线图、柱状图和扇形图”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“怎么使用vue+...
    99+
    2023-07-05
  • vue+echart实现双柱状图
    本文实例为大家分享了vue+echart实现双柱状图的具体代码,供大家参考,具体内容如下 效果图: 一、安装 版本号建议安装"echarts": "^4.8.0”,其它版本init...
    99+
    2024-04-02
  • vue如何用Echarts画柱状图
    vue如何用Echarts画柱状图,针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。vue是什么Vue是一套用于构建用户界面的渐进式JavaScript框架,Vue与其它大型框...
    99+
    2023-06-26
  • 纯CSS怎么实现柱形图效果
    这篇文章主要介绍纯CSS怎么实现柱形图效果,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!   <ulclass="chart">   <li...
    99+
    2024-04-02
  • vue echarts实现横向柱状图
    本文实例为大家分享了vue echarts实现横向柱状图的具体代码,供大家参考,具体内容如下 实现效果: 代码: <template> <div clas...
    99+
    2024-04-02
  • vue+echarts实现堆叠柱状图
    本文实例为大家分享了vue+echarts实现堆叠柱状图的具体代码,供大家参考,具体内容如下 echarts-子组件 <template> <div cla...
    99+
    2024-04-02
  • Vue+Echarts实现柱状折线图
    本文实例为大家分享了Vue+Echarts实现柱状折线图的具体代码,供大家参考,具体内容如下 vue处理json数据渲染柱状折线图 HTML: <div id="lineCha...
    99+
    2024-04-02
  • vue+Echart实现立体柱状图
    本文实例为大家分享了Echart+Vue制作立体柱状图,供大家参考,具体内容如下 先来看一下制作完成后的效果: 废话不多说,直接上代码: HTML代码: <div class...
    99+
    2024-04-02
  • Vue前端柱状图怎么实现
    这篇文章主要介绍了Vue前端柱状图怎么实现的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇Vue前端柱状图怎么实现文章都会有所收获,下面我们一起来看看吧。vue前端柱状图(叠状条形图)通过echarts来实现柱状...
    99+
    2023-07-05
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作