在vue中使用echarts(折線圖的demo,markline用法)
公司最近在用vue開發(fā)項目,項目接近尾聲了,趁休息時間寫點(diǎn)demo——
vue引入echarts(折線圖的demo)
主要是解決引入echarts,markline的使用(基準(zhǔn)線)
這是demo的效果圖:
vue腳手架不多贅述
1.安裝依賴
cnpm install echarts -S
2.在main.js中引入echarts
import echarts from 'echarts'
3.在main.js中安裝
Vue.prototype.echarts = echarts;
一般來說能正常掛載上組件,就可以在頁面中正常使用了
廢話不多說上代碼(因?yàn)樽约阂彩切“纂A段所以寫的注釋多了點(diǎn),以便以后使用)
1.HTML部分
<template> <div class="content"> <p class="prompt_p"> 近七天溫度折線圖</p> <div class="seven_echarts" id="seven"> </div> </div> </template>
2.js部分
<script type="text/javascript"> export default{ data(){ return{ seven_chart:null, month_chart:null, seven_option : { title : { // text: '未來一周氣溫變化',//感覺頭部有點(diǎn)亂,沒使用自帶的標(biāo)題 // subtext: '純屬虛構(gòu)' x: 'left', align: 'center' }, tooltip: { trigger: 'axis' }, legend: { data:['最高氣溫','最低氣溫',] }, grid: { left: '3%', right: '4%', bottom: '3%', containLabel: true }, toolbox: { feature: { magicType: {type: ['line', 'bar']},//柱狀圖和西和折線圖切換 restore: {},//刷新 saveAsImage: {},//將圖表以折線圖的形式展現(xiàn) } }, xAxis: { type: 'category', boundaryGap: false, data: ["11-26","11-27","11-28","11-29","11-30","12-01","12-02"] }, yAxis: { name:"℃", nameLocation: 'end', type: 'value', axisLabel: { formatter: '{value} ' } }, series: [ { name:'最低氣溫', type:'line', data:[0,-1,-3,-4,0,-2,-4], lineStyle:{//設(shè)置折線色顏色 color:'#3f89ec' }, itemStyle:{//設(shè)置折線折點(diǎn)的顏色 normal : { color:'#3f89ec' } } }, { name:'最高氣溫', type:'line', data:[9,10,6,7,12,11,8], lineStyle:{//設(shè)置折線色顏色 color:'black' }, itemStyle:{//設(shè)置折線折點(diǎn)的顏色 normal : { color:'black' } } }, { name:'平行于y軸的趨勢線', type:'line', markLine: { name:'aa', data: [ { name: '0℃標(biāo)準(zhǔn)線', yAxis: 0, lineStyle:{//設(shè)置折線色顏色 color:'red' }, }, ], symbol: ['arrow', 'none'],//將箭頭向左 默認(rèn)值是向右的 label:{ show:true, position:'middle',//markline描述位于中間 right,left,middle formatter: ': {c}',//顯示name中的描述 } } } ], }, } }, mounted:function (){ this.get_echarts(); }, methods:{ get_echarts:function(){ this.seven_chart = this.echarts.init(document.getElementById("seven")); // 把配置和數(shù)據(jù)放這里 this.seven_chart.setOption(this.seven_option) } }, beforeDestroy() { if (!this.seven_chart) { return } this.seven_chart.dispose(); this.seven_chart = null; }, } </script>
3.css部分
<style type="text/css"> .content{ width: 100%; } .content p{ margin-top: 1rem; font-size: 0.4rem; color: #666666; } .seven_echarts{ height: 11rem; width: 94%; } </style>
好了結(jié)束,本人目前還是前端的小白,如有錯誤歡迎指正,以后會不定期更新喲!
補(bǔ)充知識:Echarts中有多條曲線,數(shù)據(jù)精度為小數(shù)時,畫線部分與小數(shù)刻度顯示不準(zhǔn)確
最近遇到了一個問題就是 多條曲線,數(shù)據(jù)精度為小數(shù)時,畫線部分與小數(shù)刻度顯示不怎么準(zhǔn)確,但是單條曲線的時候就沒問題
// stack: ‘總量', //此處注釋掉 這個問題 就解決了 所有的都要注釋掉 series: [ { name: 'line1', type: 'line', // stack: '總量', //此處注釋掉 data: this.lineData.series[0].data //data中包含帶有小數(shù)的數(shù)據(jù) }, { name: 'line2', type: 'line', // stack: '總量', //此處注釋掉 data: this.lineData.series[1].data //data中包含帶有小數(shù)的數(shù)據(jù) } ]
如果還有什么問題,大家留言一起討論。
以上這篇在vue中使用echarts(折線圖的demo,markline用法)就是小編分享給大家的全部內(nèi)容了,希望能給大家一個參考,也希望大家多多支持腳本之家。
相關(guān)文章
Nuxt.js實(shí)現(xiàn)一個SSR的前端博客的示例代碼
這篇文章主要介紹了Nuxt.js實(shí)現(xiàn)一個SSR的前端博客的示例代碼,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2019-09-09VUE3中h()函數(shù)和createVNode()函數(shù)的使用解讀
這篇文章主要介紹了VUE3中h()函數(shù)和createVNode()函數(shù)的使用解讀,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教2022-08-08可控制緩存銷毀的?keepAlive?組件實(shí)現(xiàn)詳解
這篇文章主要為大家介紹了可控制緩存銷毀的?keepAlive?組件實(shí)現(xiàn)詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2022-10-10