最近一個(gè)vue搭建的項(xiàng)目中,要有圖表的展示稿静。類似的圖表類插件很多梭冠,但是比較習(xí)慣用hightcharts.
首先npm install highcharts --save安裝hightcharts.
安裝完成后package.json中會(huì)有相應(yīng)版本號(hào),如圖1-1
然后在需要用的到的.vue文件中引入import HighCharts from 'highcharts'
接下來(lái)正常配置圖表參數(shù)改备,給元素綁定id,初始化圖表控漠,剛開(kāi)始用HighCharts.chart(this.id,this.option);初始化圖表,
在請(qǐng)求函數(shù)的回調(diào)里悬钳,按原有的使用jq時(shí)使用hightcharts的思想盐捷,想用請(qǐng)求來(lái)的動(dòng)態(tài)數(shù)據(jù)替換寫死的圖表假數(shù)據(jù)值,如圖:1-2
結(jié)果出現(xiàn)了問(wèn)題他去,怎么也替換不了寫死的數(shù)據(jù)毙驯,請(qǐng)求來(lái)的數(shù)據(jù)可以打印出來(lái),但是圖表沒(méi)有更新數(shù)據(jù)灾测,x軸爆价,y軸的值沒(méi)有變化
解決方法:
使用 ?let charts =new HighCharts.chart(this.id,this.option);來(lái)初始化圖表,把圖表對(duì)象用charts儲(chǔ)存媳搪。
替換數(shù)據(jù)時(shí)用hightcharts的 .addSeries與 .setCategories方法來(lái)替換參數(shù)中的值铭段,如圖1-3
原因:因?yàn)榈谝环N方法找不到圖表對(duì)象,所以無(wú)法進(jìn)行數(shù)據(jù)的動(dòng)態(tài)更新秦爆。
如引用的插件不是hightcharts而是vue-hightcharts,可參考下邊鏈接序愚,解決方法同理。
vue-hightcharts鏈接 ? http://www.php.cn/js-tutorial-390415.html