在Vue中使用Echarts可視化庫的完整步驟記錄
前言
由于最近項目需要做可視化數(shù)據(jù)展示,也就是用圖表展示數(shù)據(jù),他還有一個很高端的名字:“大數(shù)據(jù)可視化”(參考圖一),首先考慮選擇什么圖表庫來作為基礎開發(fā),目前被普遍認可的是Hcharts、Echarts、AntV。

介紹:
Hcharts:國外的一款圖表庫,是圖表庫的領頭羊

Echarts:百度開發(fā)的數(shù)據(jù)可視化庫,國內(nèi)圖表庫的 “領軍人物”

AntV:是螞蟻金服開發(fā)的數(shù)據(jù)可視化庫

總結(jié)出以下幾個優(yōu)略點區(qū)別Echarts、Hcharts哪個比較合適:
1、學習容易程度:只要懂JS,那么相信你能很快上手。兩者打分相同。但是百度出品的Echarts對于國內(nèi)城市已經(jīng)有了相應的配置,調(diào)用非常方便。因此在繪制地圖方面,Echarts略勝一籌。
2、大數(shù)據(jù)表現(xiàn)力:有網(wǎng)友說,當數(shù)據(jù)量達到萬條的級別時,Highcharts的多表聯(lián)動、自動縮放具有更強的優(yōu)勢,而Echarts則會出現(xiàn)明顯的卡頓,需要設置datazoom。因此Hcharts完勝。
3、文檔友好程度:Echarts是百度的,Hcharts是國外的。另外,Echarts的文檔像是說明書,而Highcharts的文檔像是博客。個人仍偏向于說明書一樣的文檔,容易定位,因此我為Echarts轉(zhuǎn)身亮燈。
4、圖表美觀程度:看看兩家的實例Echarts、Hcharts,Echarts完爆啊!而且Echarts基于Canvas,對于3D繪圖有絕對優(yōu)勢,能畫出極漂亮的圖形。
5、圖表配置的自由度:Hcharts基于SVG,方便定制,同類型的圖表,Hcharts能玩出100種花樣。
6、圖表的豐富程度:Echarts豐富的圖表種類,和驚艷的3D效果,吊打Hcharts。
最后,更為關(guān)鍵的是,Echarts免費,Hcharts用于商業(yè)用途時還需要授權(quán),個人用時雖然免費,但會在圖表上顯示logo,有潔癖的話就只能繞道了。
所以,就決定是你了,Echarts!
個人不推薦使用Vue-Echarts版本,因為Echarts本身難度不算大,雖然文檔有點像是 “說明書”,但是還算全乎,花點時間還是可以理解的。
引入:
在Vue中使用Echarts時可以按照一般引入插件的方式引入
1、使用npm安裝Echarts:
npm install echarts --save
2、全局引入Echarts:
//main.js 不推薦 import echarts from "echarts"; Vue.prototype.$echarts = echarts;
個人不推薦在main.js全局引入的發(fā)方式,根據(jù)項目使用Echarts的程度可以選擇按需引入:
3、按需引入Echarts:
let Echarts = require('echarts/lib/echarts');
require('echarts/lib/chart/bar'); //所需圖表
簡單使用:
首先應該明確Echarts圖形必須滿足四項剛性條件才可以繪制:
準備一個具有寬高的容器(container);每次繪制之前需要初始化(init);必須設置配置,否則無從繪制(option);改變數(shù)據(jù)時必須傳入改變的數(shù)據(jù),否則監(jiān)聽不到新數(shù)據(jù)(setOption);
四步缺一不可,可以簡單理解為日常生活中娶媳婦:
找到適合結(jié)婚的女朋友(container);認識一段時間之后確定關(guān)系(init);確定關(guān)系之后需要買買買,她才會跟你繼續(xù)交往(option);關(guān)系進一步升溫之后就可以把他娶回家了(setOption);
使用:
<!-- 準備具有寬高的容器 --> <div style="width: 100%; height: 100%" ref="chart"></div>
<script>
let Echarts = require('echarts/lib/echarts'); //基礎實例 注意不要使用import
require('echarts/lib/chart/bar'); //按需引入 bar = 柱狀圖
export default {
data() { return { chart: null } }, //圖表實例
mounted() { this.init() },
methods: {
init() {
//2.初始化
this.chart = Echarts.init(this.$refs.chart);
//3.配置數(shù)據(jù)
let option = {
xAxis: { type: 'category', data: ['Mon', 'Tue', 'Wed', 'Thu', 'Fri', 'Sat', 'Sun'] }, //X軸
yAxis: { type: 'value' }, //Y軸
series: [{ data: [120, 200, 150, 80, 70, 110, 130], type: 'bar' }] //配置項
};
// 4.傳入數(shù)據(jù)
this.chart.setOption(option);
}
}
};
</script>

自適應窗口大?。?/strong>
為了兼容性,需要做到每個圖表根據(jù)屏幕變化而自適應寬高
單個 / 多個圖表均生效:
mounted() {
window.addEventListener('resize', () => {
this.chart.resize();
});
}
效果展示:

總結(jié)
到此這篇關(guān)于在Vue中使用Echarts可視化庫的文章就介紹到這了,更多相關(guān)Vue使用Echarts可視化庫內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Vue element-UI el-select循環(huán)選中的問題
這篇文章主要介紹了Vue element-UI el-select循環(huán)選中的問題,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教2022-10-10
vue項目中chunk-vendors.js提示報錯的查看方法(最新推薦)
在vue項目中,chunk-vendors.js報出的錯誤提示經(jīng)常會導致開發(fā)者困惑,正確查看錯誤的方法是從錯誤提示的詳細信息中找到報錯原因,下面給大家分享vue項目中chunk-vendors.js提示報錯的查看方法,感興趣的朋友一起看看吧2024-12-12
vue?demi支持sfc方式的vue2vue3通用庫開發(fā)詳解
這篇文章主要為大家介紹了vue?demi支持sfc方式的vue2vue3通用庫開發(fā)詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪2022-08-08
vue-element-admin后臺生成動態(tài)路由及菜單方法詳解
vue-element-admin后臺管理系統(tǒng)模板框架 是vue結(jié)合element-ui一體的管理系統(tǒng)框架,下面這篇文章主要給大家介紹了關(guān)于vue-element-admin后臺生成動態(tài)路由及菜單的相關(guān)資料,需要的朋友可以參考下2023-09-09
vue?parseHTML?函數(shù)源碼解析AST基本形成
這篇文章主要為大家介紹了vue?parseHTML?函數(shù)源碼解析AST基本形成,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪2022-07-07

