在vue中使用Echarts利用watch做動態(tài)數(shù)據(jù)渲染操作
依舊直接上代碼~
首先安裝引入Echarts,我是直接把Echarts掛到VUE全局變量上了
//引入echarts import Vue from 'vue'; import echarts from 'echarts'; Vue.prototype.$echarts = echarts;
<template> <div class="demo-container"> <div ref="chart_wrap" class="chart_wrap"></div> </div> </template> <script> export default { name: "demo", computed: {}, data() { return { seriesData: [] }; }, created() {}, mounted() { this.initCharts(); setTimeout(() => { this.seriesData.push({ name: "銷量", type: "bar", data: [5, 20, 36, 10, 10, 20] }); }, 5000); }, watch: { seriesData(val, oldVal) { console.log(1111, val, oldVal); this.setOptions(val); } }, methods: { initCharts() { this.chart = this.$echarts.init(this.$refs.chart_wrap); this.setOptions(); }, setOptions(series) { console.log(22222,this.chart,series); this.chart.setOption({ title: { text: "ECharts 入門示例" }, tooltip: {}, legend: { data: ["銷量"] }, xAxis: { data: ["襯衫", "羊毛衫", "雪紡衫", "褲子", "高跟鞋", "襪子"] }, yAxis: {}, series: series }); } } }; </script> <style rel="stylesheet/scss" lang="scss" scoped> .chart_wrap { height: 400px; } </style>
補(bǔ)充知識:echarts-循環(huán)生成圖
1、問題背景
利用for循環(huán)生產(chǎn)多個氣泡圖,并且每個氣泡都可以點(diǎn)擊
2、實(shí)現(xiàn)源碼
<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title>echarts-循環(huán)生成圖</title> <link rel="shortcut icon" href="../js/echarts-2.2.7/doc/asset/ico/favicon.png"> <script type="text/javascript" src="../js/echarts-2.2.7/doc/asset/js/jquery.min.js" ></script> <script type="text/javascript" src="../js/echarts-2.2.7/doc/example/www2/js/echarts-all.js" ></script> <style> body,html,#div-chart{ width: 99%; height: 100%; font-family: "微軟雅黑"; font-size: 12px; } .chart{ width: 1200px; height: 100px; } </style> <script> $(document).ready(function(){ buildChart(); buildChartJS(); }); function buildChart() { $("#div-chart").empty(); var chart = ""; for(var i=0;i<8;i++) { chart += "<div id='chart"+i+"' class='chart'></div>"; } $("#div-chart").append(chart); } function buildChartJS() { for(var i=0;i<8;i++) { var chart = document.getElementById('chart'+i); var echart = echarts.init(chart); var option = { legend: { data:['scatter1'], show:false }, splitLine:{ show:false }, grid:{ borderWidth:0 }, xAxis : [ { show:false, type : 'value', splitNumber: 2, scale: true, axisLine:{ show:false }, splitLine:{ show:false }, axisTick:{ show:false } } ], yAxis : [ { show:false, type : 'value', splitNumber: 2, scale: true, axisLine:{ show:false }, splitLine:{ show:false } } ], series : [ { name:'scatter1', type:'scatter', symbol: 'emptyCircle', symbolSize: 20, itemStyle : { normal: { color:'#0068B7', label:{ show: true, position: 'inside', textStyle : { fontSize : 26, fontFamily : '微軟雅黑', color:'#0068B7' } } } }, data: randomDataArray() } ] }; function eConsole(param) { alert(param.value); console.dir(param); } echart.on("click", eConsole); echart.setOption(option); } } function randomDataArray() { var d = []; var arr = [3,5,7,9,10,1,2,4,8,6]; var len = 10; for(var i=0;i<len;i++) { d.push([i+1,0,arr[i],]); } return d; } </script> </head> <body> <div id="div-chart"> </div> </body> </html>
3、實(shí)現(xiàn)結(jié)果
以上這篇在vue中使用Echarts利用watch做動態(tài)數(shù)據(jù)渲染操作就是小編分享給大家的全部內(nèi)容了,希望能給大家一個參考,也希望大家多多支持腳本之家。
相關(guān)文章
詳解探索 vuex 2.0 以及使用 vuejs 2.0 + vuex 2.0 構(gòu)建記事本應(yīng)用
本篇文章主要介紹了詳解探索 vuex 2.0 以及使用 vuejs 2.0 + vuex 2.0 構(gòu)建記事本應(yīng)用 ,具有一定的參考價值,感興趣的小伙伴們可以參考一下2017-06-06Vue項(xiàng)目配置、切換主題顏色詳細(xì)教程(mixin+scss方式,簡單高效)
這篇文章主要給大家介紹了關(guān)于Vue項(xiàng)目配置、切換主題顏色(mixin+scss方式)的相關(guān)資料,根據(jù)預(yù)設(shè)的配色方案,在前端實(shí)現(xiàn)動態(tài)切換系統(tǒng)主題顏色,文中通過代碼示例介紹的非常詳細(xì),需要的朋友可以參考下2023-11-11Element控件Tree實(shí)現(xiàn)數(shù)據(jù)樹形結(jié)構(gòu)的示例代碼
我們在開發(fā)中肯定會遇到用樹形展示數(shù)據(jù)的需求,本文主要介紹了Element控件Tree實(shí)現(xiàn)數(shù)據(jù)樹形結(jié)構(gòu)的示例代碼,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2023-08-08vue實(shí)現(xiàn)用戶動態(tài)權(quán)限登錄的代碼示例
這篇文章主要介紹了vue如何實(shí)現(xiàn)用戶動態(tài)權(quán)限登錄,文中的代碼示例介紹的非常詳細(xì),對大家學(xué)習(xí)vue有一定的幫助,需要的朋友可以參考閱讀2023-05-05vue3在單個組件中實(shí)現(xiàn)類似mixin的事件調(diào)用
這篇文章主要為大家詳細(xì)介紹了vue3如何在單個組件中實(shí)現(xiàn)類似mixin的事件調(diào)用,文中的示例代碼講解詳細(xì),感興趣的小伙伴可以跟隨小編一起學(xué)習(xí)一下2024-01-01創(chuàng)建nuxt.js項(xiàng)目流程圖解
Nuxt.js是創(chuàng)建Universal Vue.js應(yīng)用程序的框架。它的主要范圍是UI渲染,同時抽象出客戶端/服務(wù)器分布。我們的目標(biāo)是創(chuàng)建一個足夠靈活的框架,以便您可以將其用作主項(xiàng)目庫或基于Node.js的當(dāng)前項(xiàng)目。2020-03-03