前端项目中vue如何使用Echarts,实现数据可视化图表

项目场景:

在vue中使用Echarts可视化图表,官方网址如下

Handbook - Apache ECharts


安装和使用:

①从npm获取

npm install echarts --save

② 在vue项目中引入 ECharts

全局引入方法,在main.js里

//全局引入echarts(最新版5.0),在main.js里
import * as echarts from 'echarts'
Vue.prototype.$echarts = echarts

③在单页面文件里创建容器

//在页面文件里创建一个div,一定要设置高!不然图表出不来!
 <div id="chart" style="height: 600px" ref="chart"></div>

一定要给容器设置高度!不然图表出不来! 

④在vue的data里定义一个echarts的实例

//在data里定义一个实例,名字跟容器里的ref一致
export default {
  data () {
    return {
      chart: null // echarts图表实例
    }
  },

注意:ref定义的属性名要保持一致,这点很重要

⑤在methods层里使用

// methods层负责定义方法
methods: {

initChart () {
    // 初始化echarts
      this.chart = this.$echarts.init(this.$refs.chart)
      // 设置图表option(配置项)绘制图表
      // 绘制图表
      this.chart.setOption({

        title: {
          text: '商品销售数据'
        },
        tooltip: {},
        xAxis: {
          data: ['衬衫', '羊毛衫', '雪纺衫', '裤子', '高跟鞋', '袜子']
        },
        yAxis: {
          type: 'value'
        },
        backgroundColor: '#dddddd',
        color: ['#72ccff', '#d4a4eb'],
        series: [
          {
            name: '销量',
            type: 'bar', // 柱状图
            data: [5, 20, 36, 10, 10, 20]
          },
          {
            name: '利润',
            smooth: true,
            type: 'line', // 折线图
            data: [2, 23, 5, 54, 9, 33]
          }
        ]

      })
    },

},

⑥在mounted里初始化页面

//mounted和methods同层级,不要嵌套到methods里,逗号隔开
mounted () {

    // 在这里初始化 echarts 因为初始化要传实例
    this.initChart()

  },

mounted和methods同层级,切忌嵌套

不了解的去多看看vue生命周期。

简单科普,

  • mounted:dom渲染完成,组件挂载完成 ,实现页面效果
  • methods:事件方法执行,vue的行为层

呈现效果:


完整代码:

<template>
<div id="chart" style="height: 400px" ref="chart"></div>
</template>

<script>
  export default {
    data() {
      chart: null // echarts图表实例
    },

    methods: {
    initChart () {
 
      this.chart = this.$echarts.init(this.$refs.chart)
   
      this.chart.setOption({
        title: {
          text: '商品销售数据'
        },
        tooltip: {},
        xAxis: {
          data: ['衬衫', '羊毛衫', '雪纺衫', '裤子', '高跟鞋', '袜子']
        },
        yAxis: {
          type: 'value'
        },
        backgroundColor: '#dddddd',
        color: ['#72ccff', '#d4a4eb'],
        series: [
          {
            name: '销量',
            type: 'bar', // 柱状图
            data: [5, 20, 36, 10, 10, 20]
          },
          {
            name: '利润',
            smooth: true,
            type: 'line', // 折线图
            data: [2, 23, 5, 54, 9, 33]
          }
        ]

      })
    },
},

   mounted () {
    this.initChart()
  },
</script>

 作者上一篇文章:解决前端项目问题,基于vue的后端接口excel文件的导出_意初的博客-CSDN博客结构层, 行为层,数据层,效果如下,https://blog.csdn.net/weixin_43928112/article/details/125187111

  • 4
    点赞
  • 15
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
### 回答1: 在Vue.js使用Echarts实现数据动态刷新功能,需要先安装EchartsVue.js的相关依赖。 1. 首先,在Vue项目安装EchartsVue-Echarts依赖。可以使用npm或yarn安装。 ```bash npm install echarts vue-echarts ``` 2. 在Vue的组件引入EchartsVue-Echarts。 ```javascript import echarts from 'echarts' import VueECharts from 'vue-echarts' // 引入需要的Echarts主题 import 'echarts/theme/macarons' export default { components: { VueECharts }, data() { return { chartOptions: {}, data: [] } }, mounted() { this.initChart() // 调用数据刷新方法 this.refreshData() }, methods: { initChart() { // 初始图表配置 this.chartOptions = { // 设置Echarts主题 theme: 'macarons', // 设置图表类型和数据 series: [{ type: 'bar', data: this.data }] } }, refreshData() { // 模拟异步获取数据 setTimeout(() => { // 更新数据 this.data = [100, 200, 300, 400, 500] // 在数据更新后重新渲染图表 this.$refs.chart.refresh() // 定时调用数据刷新方法 this.refreshData() }, 2000) } } } ``` 3. 在Vue模板使用Vue-Echarts组件显示图表。 ```html <template> <div> <vue-echarts ref="chart" :options="chartOptions"></vue-echarts> </div> </template> ``` 以上是一个简单的示例,通过不断更新数据并定时刷新图表实现数据动态刷新功能。在实际开发,可以根据需求对图表样式、数据等进行自定义配置。 ### 回答2: Vue.js是一种基于JavaScript的前端框架,而Echarts是一种数据工具。在Vue.js使用Echarts实现数据动态刷新功能,主要分为以下几个步骤。 首先,我们需要安装Echarts。可以通过npm或者yarn来安装Echarts,命令如下: ``` npm install echarts --save ``` 然后,在Vue组件引入Echarts的库文件,可以在main.js全局引入,或者在需要使用Echarts的组件局部引入,命令如下: ``` import echarts from 'echarts' ``` 接下来,创建一个div作为Echarts图表的容器,并设置其样式和大小,例如: ``` <div id="chart" style="width: 600px; height: 400px;"></div> ``` 然后,在Vue组件的生命周期钩子函数使用Echarts创建图表,并将数据传入图表。例如,在created钩子函数: ``` created() { this.initChart() }, methods: { initChart() { // 根据容器的id获取图表的dom对象 const chartDom = document.getElementById('chart') // 创建echarts实例对象 const myChart = echarts.init(chartDom) // 根据实际需求设置图表的配置项和数据 const option = { //... series: [ { //... data: this.data // 设置数据 } ] } // 使用配置项配置图表 myChart.setOption(option) } } ``` 最后,当需要刷新数据时,可以通过更新this.data来动态刷新图表数据,并重新渲染图表。例如,在一个按钮的点击事件: ``` methods: { refreshData() { // 在此处根据实际需求更新this.data的值 //... // 重新渲染图表 this.initChart() } } ``` 通过以上步骤,就可以在Vue.js使用Echarts实现数据动态刷新功能了。当数据时,只需要更新数据并重新渲染图表即可。 ### 回答3: 在Vue.js使用ECharts实现数据动态刷新功能的具体步骤如下: 1. 首先,安装ECharts库。可以通过npm安装ECharts,运行命令:npm install echarts --save 2. 引入ECharts库。在Vue组件,通过import语句引入ECharts库,如:import echarts from 'echarts' 3. 在Vue组件的data选项定义一个变量,用于存储ECharts实例。例如:chart: null 4. 在Vue组件的mounted钩子函数,初始ECharts实例,并将其挂载到页面上的DOM节点上。例如: ``` mounted() { this.chart = echarts.init(this.$refs.chartContainer) } ``` 5. 在Vue组件的methods选项,编写一个方法用于更新图表数据。例如: ``` updateChart() { // 获取新的数据 const newData = fetchData() // 更新图表数据 this.chart.setOption({ series: [ { data: newData } ] }) } ``` 在这个方法,首先通过适当的方式获取新的数据,然后通过setOption方法更新图表数据。 6. 在需要的时机,调用updateChart方法来更新图表数据。 以上就是在Vue.js使用ECharts实现数据动态刷新功能的基本步骤。在实际应用,可能还需要根据具体需求对图表进行配置和样式的调整。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值