如何使用RoughViz可視化Vue.js中的草繪圖表
圖表是數(shù)據(jù)的圖形表示,用于使數(shù)據(jù)集更易于閱讀,并且易于區(qū)分各部分。雖然大多數(shù)用戶習(xí)慣于看到簡潔而正式的圖表,但一些用戶更喜歡看到手繪或素描的圖表,這就是 roughViz 的用武之地。
roughViz 是一個(gè)基于 D3.js 和 Rough.js 的 JavaScript 庫。該庫旨在幫助構(gòu)建看起來像草圖或手繪圖的圖表,如下例所示。
在本指南中,你將學(xué)習(xí)如何使用 vue-roughviz 在 Vue.js 應(yīng)用程序中顯示類似草圖的圖表,以及如何使用 vue-cli 配置 Vue 應(yīng)用程序。
先決條件本教程假定滿足以下先決條件:
對 Vue.js 的基本了解 Node.js 的本地開發(fā)環(huán)境,以及對 Node 軟件包管理器(npm)的熟悉 文本編輯器,例如 Visual Studio Code 或 Atom 開始如果尚未安裝 vue-cli,請運(yùn)行以下命令以安裝最新版本。
npm install -g @vue/cli# ORyarn global add @vue/cli
現(xiàn)在,創(chuàng)建一個(gè)新的 vue 應(yīng)用程序:
vue create my-app
注意:此過程可能需要幾分鐘。完成后,我們可以進(jìn)入新的應(yīng)用程序根目錄:
cd my-app
上面詳細(xì)描述的過程創(chuàng)建了一個(gè)新的 Vue.js 應(yīng)用程序。為了確保一切都設(shè)置好了,運(yùn)行 npm run serve。當(dāng)你訪問http://localhost:8080時(shí),你應(yīng)該會在瀏覽器中看到“Welcome to Your Vue.js app page”。
添加 vue-roughvizvue-roughviz 是 RoughViz.js 的 Vue.js 包裝器。這使得該庫可以作為組件進(jìn)行訪問,從而可以在基于 Vue.js 的項(xiàng)目中實(shí)現(xiàn)無縫重用。
要將 vue-roughviz 包含在我們的項(xiàng)目中,請運(yùn)行:
npm install vue-roughvizvue-roughViz 組件
vue-roughviz 提供了所有 rawViz 圖表樣式的組件,其中包括:
roughBar——rawViz 條形圖組件 roughBarH——roughViz 水平條形圖組件 roughDonut——roughViz 甜甜圈圖組件 roughPie——roughViz 餅圖 roughLine——roughViz 折線圖組件 roughScatter——roughViz 分散圖表組件 roughStackedBar——roughViz 堆疊條形圖組件 使用將 vue-roughviz 添加到項(xiàng)目后,下一步是在首選的文本編輯器中打開項(xiàng)目文件夾。
當(dāng)你打開 src/App.vue 文件時(shí),初始內(nèi)容應(yīng)類似于下圖:
如果你的視圖如上所述,請繼續(xù)并刪除其所有內(nèi)容,并替換為以下代碼:
<template> <div id='app'> <rough-bar :data='{ labels: [’North’, ’South’, ’East’, ’West’], values: [10, 5, 8, 3], }' roughness='8' :colors='[’red’, ’orange’, ’blue’, ’skyblue’]' stroke='black' stroke- fill- fill-weight='3.5' /> </div></template>
代碼說明
import ...——這行代碼是從我們先前安裝的 vue-roughviz 導(dǎo)入 rawBar 組件。 export default {} ——此塊是為了使以前導(dǎo)入的組件(roughBar)在我們的應(yīng)用中可用。 <rough-bar :data='[...]' /> ——這是我們調(diào)用外部 rawBar 組件的地方,這些組件中指定的屬性是必需的 prop。 vue-roughviz props唯一需要的 prop 是 data,它是用來構(gòu)造圖表的數(shù)據(jù),這可以是字符串或?qū)ο蟆?/p>
如果選擇一個(gè)對象,則該對象必須包含 labels 和 values 鍵。如果改用字符串,則字符串必須是 csv 或 tsv 文件的 URL。在這個(gè)文件中,還必須將 labels 和 values 指定為表示每個(gè)列的單獨(dú)屬性。
其他有用的 prop 包括:
title——指定圖表標(biāo)題 roughness——圖表的粗細(xì)度等級 stroke——bar stroke 的顏色 stroke-width fill-weight——指定內(nèi)部路徑顏色的粗細(xì)。 fill-style——條形填充樣式,可以是以下一種: dashed solid zigzag-line cross-hatch hachure zigzag運(yùn)行要預(yù)覽我們的應(yīng)用,運(yùn)行 npm run serve。如果你正確地遵循了上述步驟,訪問http://localhost:8080應(yīng)該允許你查看瀏覽器中顯示的圖表。
讓我們做一個(gè)小實(shí)驗(yàn),在我們的圖表中顯示過去 10 天比特幣的價(jià)格歷史。在這個(gè)實(shí)驗(yàn)中,我們將使用 Coingecko API。
為什么選擇 Coingecko?與其他加密貨幣 API 不同,Coingecko 是免費(fèi)的,不需要 API 密鑰就可以開始,這是我們實(shí)驗(yàn)的理想選擇。
繼續(xù),用下面的代碼替換 src/App.vue
<template> <div id='app'> <div> <rough-bar v-if='chartValue.length > 0' :data='{ labels: chartLabel, values: chartValue, }' roughness='3' stroke='black' stroke- fill- fill-weight='2' /> </div> </div></template>
我們創(chuàng)建了一個(gè)異步方法 loadData() ,它從 coingecko API 獲取比特幣價(jià)格歷史記錄,并循環(huán)遍歷返回的數(shù)據(jù)。我們將日期與價(jià)格分開,使用返回的日期作為圖表標(biāo)簽,價(jià)格作為圖表值。而 beforeMount() 也就是在我們的應(yīng)用被掛載到視圖之前,我們調(diào)用了前面創(chuàng)建的 loadData() 函數(shù)。
運(yùn)行我們的應(yīng)用程序應(yīng)該,你應(yīng)該看到我們的圖表的新變化如下:
以上就是如何使用RoughViz可視化Vue.js中的草繪圖表的詳細(xì)內(nèi)容,更多關(guān)于RoughViz可視化Vue.js中的草繪圖表的資料請關(guān)注好吧啦網(wǎng)其它相關(guān)文章!
相關(guān)文章:
1. vue實(shí)現(xiàn)web在線聊天功能2. JavaEE SpringMyBatis是什么? 它和Hibernate的區(qū)別及如何配置MyBatis3. JavaScript實(shí)現(xiàn)頁面動態(tài)驗(yàn)證碼的實(shí)現(xiàn)示例4. Springboot 全局日期格式化處理的實(shí)現(xiàn)5. Java使用Tesseract-Ocr識別數(shù)字6. 完美解決vue 中多個(gè)echarts圖表自適應(yīng)的問題7. Python使用urlretrieve實(shí)現(xiàn)直接遠(yuǎn)程下載圖片的示例代碼8. SpringBoot+TestNG單元測試的實(shí)現(xiàn)9. 在Chrome DevTools中調(diào)試JavaScript的實(shí)現(xiàn)10. 解決Android Studio 格式化 Format代碼快捷鍵問題
