您好,登錄后才能下訂單哦!
這篇“Vue通過(guò)echarts怎么實(shí)現(xiàn)數(shù)據(jù)圖表化顯示”文章的知識(shí)點(diǎn)大部分人都不太理解,所以小編給大家總結(jié)了以下內(nèi)容,內(nèi)容詳細(xì),步驟清晰,具有一定的借鑒價(jià)值,希望大家閱讀完這篇文章能有所收獲,下面我們一起來(lái)看看這篇“Vue通過(guò)echarts怎么實(shí)現(xiàn)數(shù)據(jù)圖表化顯示”文章吧。
ecahrts官網(wǎng)
官網(wǎng)有許多圖表案例,并且可以直接復(fù)制對(duì)應(yīng)的配置代碼。
vue項(xiàng)目中引入:
安裝
npm install echarts --save
引入echarts
全部一次性引入:
import * as echarts from 'echarts';
按需引入:
// 引入 echarts 核心模塊,核心模塊提供了 echarts 使用必須要的接口。 import * as echarts from 'echarts/core'; // 引入柱狀圖圖表,圖表后綴都為 Chart import { BarChart } from 'echarts/charts'; // 引入提示框,標(biāo)題,直角坐標(biāo)系,數(shù)據(jù)集,內(nèi)置數(shù)據(jù)轉(zhuǎn)換器組件,組件后綴都為 Component import { TitleComponent, TooltipComponent, GridComponent, DatasetComponent, TransformComponent } from 'echarts/components'; // 標(biāo)簽自動(dòng)布局,全局過(guò)渡動(dòng)畫等特性 import { LabelLayout, UniversalTransition } from 'echarts/features'; // 引入 Canvas 渲染器,注意引入 CanvasRenderer 或者 SVGRenderer 是必須的一步 import { CanvasRenderer } from 'echarts/renderers'; // 注冊(cè)必須的組件 echarts.use([ TitleComponent, TooltipComponent, GridComponent, DatasetComponent, TransformComponent, BarChart, LabelLayout, UniversalTransition, CanvasRenderer ]); // 接下來(lái)的使用就跟之前一樣,初始化圖表,設(shè)置配置項(xiàng) var myChart = echarts.init(document.getElementById('main')); myChart.setOption({ // ... });
對(duì)于入門學(xué)習(xí),不考慮項(xiàng)目的體積等問(wèn)題,直接全部引入即可。
我看有的教程是直接在main.js中將echarts掛載到vue實(shí)例上的,但我感覺(jué)在需要使用圖表的組件或者頁(yè)面中直接引入更好。
我們需要?jiǎng)?chuàng)建一個(gè)容器(就是一個(gè)div塊)來(lái)掛載將要渲染的圖表。
<div id="main"></div>
在js中獲?。?/p>
let chartDom = document.getElementById('main'); let myChart = echarts.init(chartDom);
使用ref同理。
在vue組件中有個(gè)更方便的方式(僅適用于當(dāng)前組件只渲染一個(gè)ecahrts圖表情況),可以直接使用this.$el來(lái)獲取當(dāng)前組件的dom。
let chartDom = this.$el; let myChart = echarts.init(chartDom);
echarts是基于一個(gè)option對(duì)象(配置對(duì)象)來(lái)進(jìn)行圖表配置的。
下面是一個(gè)常見折線圖的option配置對(duì)象:
項(xiàng)目完整代碼:
<template> <div id="main"></div> </template> <script> import * as echarts from 'echarts'; export default { data(){ return{ } }, mounted() { let chartDom = document.getElementById('main'); let myChart = echarts.init(chartDom); let option; option = { xAxis: { type: 'category', data: ['Mon', 'Tue', 'Wed', 'Thu', 'Fri', 'Sat', 'Sun'] }, yAxis: { type: 'value' }, series: [ { data: [150, 230, 224, 218, 135, 147, 260], type: 'line' } ] }; option && myChart.setOption(option); } } </script> <style scoped> #main{ width: 500px; height: 500px; } </style>
效果:
注意:
1、一定要給容器設(shè)置寬高,不然默認(rèn)寬高為0,頁(yè)面不會(huì)顯示圖表。
2、需要在mounted生命周期中獲取dom,在created周期中是無(wú)法獲取到dom的,自然無(wú)法完成圖表的掛載。
以上就是關(guān)于“Vue通過(guò)echarts怎么實(shí)現(xiàn)數(shù)據(jù)圖表化顯示”這篇文章的內(nèi)容,相信大家都有了一定的了解,希望小編分享的內(nèi)容對(duì)大家有幫助,若想了解更多相關(guān)的知識(shí)內(nèi)容,請(qǐng)關(guān)注億速云行業(yè)資訊頻道。
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。