成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

使用RoughViz可視化Vue.js中的草繪圖表

大數據 數據可視化
圖表是數據的圖形表示,用于使數據集更易于閱讀,并且易于區分各部分。雖然大多數用戶習慣于看到簡潔而正式的圖表,但一些用戶更喜歡看到手繪或素描的圖表,這就是roughViz的用武之地。

[[380640]]

介紹

圖表是數據的圖形表示,用于使數據集更易于閱讀,并且易于區分各部分。雖然大多數用戶習慣于看到簡潔而正式的圖表,但一些用戶更喜歡看到手繪或素描的圖表,這就是roughViz的用武之地。

roughViz是一個基于D3.js和Rough.js的JavaScript庫。該庫旨在幫助構建看起來像草圖或手繪圖的圖表,如下例所示。

在本指南中,你將學習如何使用vue-roughviz在Vue.js應用程序中顯示類似草圖的圖表,以及如何使用vue-cli配置Vue應用程序。

先決條件

本教程假定滿足以下先決條件:

  • 對Vue.js的基本了解
  • Node.js的本地開發環境,以及對Node軟件包管理器(npm)的熟悉
  • 文本編輯器,例如Visual Studio Code或Atom

開始

如果尚未安裝vue-cli,請運行以下命令以安裝最新版本。

  1. npm install -g @vue/cli 
  2. OR 
  3. yarn global add @vue/cli 

現在,創建一個新的vue應用程序:

  1. vue create my-app 

注意:此過程可能需要幾分鐘。完成后,我們可以進入新的應用程序根目錄:

  1. cd my-app 

上面詳細描述的過程創建了一個新的Vue.js應用程序。為了確保一切都設置好了,運行 npm run serve。當你訪問http://localhost:8080時,你應該會在瀏覽器中看到“Welcome to Your Vue.js app page”。

添加vue-roughviz

vue-roughviz 是RoughViz.js的Vue.js包裝器。這使得該庫可以作為組件進行訪問,從而可以在基于Vue.js的項目中實現無縫重用。

要將 vue-roughviz 包含在我們的項目中,請運行:

  1. npm install vue-roughviz 

vue-roughViz組件

vue-roughviz提供了所有rawViz圖表樣式的組件,其中包括:

  • roughBar——rawViz條形圖組件
  • roughBarH——roughViz水平條形圖組件
  • roughDonut——roughViz甜甜圈圖組件
  • roughPie——roughViz餅圖
  • roughLine——roughViz折線圖組件
  • roughScatter——roughViz分散圖表組件
  • roughStackedBar——roughViz堆疊條形圖組件

使用

將 vue-roughviz 添加到項目后,下一步是在首選的文本編輯器中打開項目文件夾。

當你打開 src/App.vue 文件時,初始內容應類似于下圖:

src/App.vue file

如果你的視圖如上所述,請繼續并刪除其所有內容,并替換為以下代碼:

  1. <template> 
  2.   <div id="app"
  3.     <rough-bar 
  4.       :data="{ 
  5.         labels: ['North''South''East''West'], 
  6.         values: [10, 5, 8, 3], 
  7.       }" 
  8.       title="Regions" 
  9.       roughness="8" 
  10.       :colors="['red', 'orange', 'blue', 'skyblue']" 
  11.       stroke="black" 
  12.       stroke-width="3" 
  13.       fill-style="cross-hatch" 
  14.       fill-weight="3.5" 
  15.       class="d-inline" 
  16.     /> 
  17.   </div> 
  18. </template> 
  19.  
  20. <script> 
  21. import { RoughBar } from "vue-roughviz"
  22. export default { 
  23.   name"App"
  24.   components: { 
  25.     RoughBar, 
  26.   }, 
  27. }; 
  28. </script> 

代碼說明

  • import ... ——這行代碼是從我們先前安裝的vue-roughviz導入rawBar組件。
  • export default {} ——此塊是為了使以前導入的組件(roughBar)在我們的應用中可用。
  • ——這是我們調用外部rawBar組件的地方,這些組件中指定的屬性是必需的prop。

vue-roughviz props

唯一需要的prop是 data,它是用來構造圖表的數據,這可以是字符串或對象。

如果選擇一個對象,則該對象必須包含 labels 和 values 鍵。如果改用字符串,則字符串必須是csv或tsv文件的URL。在這個文件中,還必須將 labels 和 values 指定為表示每個列的單獨屬性。

其他有用的prop包括:

  • title——指定圖表標題
  • roughness——圖表的粗細度等級
  • stroke——bar stroke的顏色
  • stroke-width
  • fill-weight——指定內部路徑顏色的粗細。
  • fill-style——條形填充樣式,可以是以下一種:
    • dashed
    • solid
    • zigzag-line
    • cross-hatch
    • hachure
    • zigzag

運行

要預覽我們的應用,運行 npm run serve。如果你正確地遵循了上述步驟,訪問http://localhost:8080應該允許你查看瀏覽器中顯示的圖表。

從外部API加載數據

讓我們做一個小實驗,在我們的圖表中顯示過去10天比特幣的價格歷史。在這個實驗中,我們將使用Coingecko API。

**為什么選擇Coingecko?**與其他加密貨幣API不同,Coingecko是免費的,不需要API密鑰就可以開始,這是我們實驗的理想選擇。

繼續,用下面的代碼替換 src/App.vue

  1. <template> 
  2.   <div id="app"
  3.     <div class="d-inline-block"
  4.       <rough-bar 
  5.         v-if="chartValue.length > 0" 
  6.         :data="{ 
  7.           labels: chartLabel, 
  8.           values: chartValue, 
  9.         }" 
  10.         title="BTC - 10 Days" 
  11.         roughness="3" 
  12.         color="#ccc" 
  13.         stroke="black" 
  14.         stroke-width="1" 
  15.         fill-style="zig-zag" 
  16.         fill-weight="2" 
  17.       /> 
  18.     </div> 
  19.   </div> 
  20. </template> 
  21.  
  22. <script> 
  23. import { RoughBar } from "vue-roughviz"
  24. export default { 
  25.   name"App"
  26.   components: { 
  27.     RoughBar, 
  28.   }, 
  29.   data() { 
  30.     return { 
  31.       chartLabel: [], 
  32.       chartValue: [], 
  33.     }; 
  34.   }, 
  35.   methods: { 
  36.     async loadData() { 
  37.       await fetch
  38.         "https://api.coingecko.com/api/v3/coins/bitcoin/market_chart?vs_currency=usd&days=10&interval=daily" 
  39.       ) 
  40.         .then((res) => res.json()) 
  41.         .then((rawData) => { 
  42.           console.table(rawData.prices); 
  43.           rawData.prices.map((data) => { 
  44.             let date = new Date(data[0]).toDateString(); 
  45.             let rPrice = data[1]; 
  46.             console.log(`Price of 1btc on ${dateis ${rPrice}`); 
  47.             this.chartLabel.push(date); 
  48.             this.chartValue.push(rPrice); 
  49.           }); 
  50.         }) 
  51.         .catch((err) => console.error("Fetch error -> ", err)); 
  52.     }, 
  53.   }, 
  54.   beforeMount() { 
  55.     this.loadData(); 
  56.   }, 
  57. }; 
  58. </script> 

我們創建了一個異步方法 loadData(),它從coingecko API獲取比特幣價格歷史記錄,并循環遍歷返回的數據。我們將日期與價格分開,使用返回的日期作為圖表標簽,價格作為圖表值。而 beforeMount() 也就是在我們的應用被掛載到視圖之前,我們調用了前面創建的 loadData() 函數。

運行我們的應用程序應該,你應該看到我們的圖表的新變化如下:

結束

本文解釋了圖表及其用途,介紹了使用Vue-CLI創建Vue應用程序的過程,并展示了如何使用 vue-roughviz 在Vue.js應用程序中顯示類似草圖的圖表。

本文轉載自微信公眾號「前端全棧開發者」,可以通過以下二維碼關注。轉載本文請聯系前端全棧開發者公眾號。

 

責任編輯:武曉燕 來源: 前端全棧開發者
相關推薦

2021-04-09 10:42:03

數據可視化框架大數據

2021-10-11 08:04:22

Python數據行程

2021-08-30 11:40:06

PythonSeaborn可視化

2015-08-20 10:04:40

可視化

2020-03-01 14:01:22

Echarts數據可視化圖表

2021-05-08 06:14:28

Vue.js片段開發

2025-04-02 07:37:29

2023-06-11 16:12:14

數據可視化圖表類型

2023-08-01 16:01:59

可視化Seaborn

2022-05-30 08:37:34

可視化圖表項目開源

2017-05-23 09:07:48

可視化圖表視覺

2022-08-23 12:32:37

Python可視化圖表

2014-05-05 10:01:51

數據可視化

2022-07-13 15:54:14

Matplotlib圖表

2019-05-28 11:52:43

可視化圖表數據

2017-07-14 10:10:08

Vue.jsMixin

2020-03-11 14:39:26

數據可視化地圖可視化地理信息

2024-05-22 16:03:49

2023-12-18 15:02:00

PyechartsPython數據可視化工具

2022-11-28 15:04:42

數據可視化工具
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 日韩精品一区二区三区视频播放 | 国产一二三区在线 | 在线观看一区 | 亚洲精品久久久蜜桃 | 国产四区 | 中文字幕一区二区三区四区五区 | www.亚洲视频.com | 欧洲成人 | 亚洲美女网站 | 成人精品一区二区三区中文字幕 | ririsao久久精品一区 | 男女啪啪高潮无遮挡免费动态 | 国产目拍亚洲精品99久久精品 | 亚洲 中文 欧美 日韩 在线观看 | 日日射夜夜骑 | 91 在线| 欧美国产精品一区二区三区 | 精品国产免费一区二区三区演员表 | 欧美日韩亚洲一区 | 国产视频中文字幕在线观看 | 三级在线免费 | 狠狠久久久 | www.youjizz.com日韩 | 久久av.com| 一级a性色生活片久久毛片 一级特黄a大片 | 综合另类 | 国产精品污www在线观看 | 欧美午夜精品久久久久久浪潮 | 日本男人天堂 | 密室大逃脱第六季大神版在线观看 | 国产精品久久久久一区二区三区 | 日韩欧美在线播放 | 天天影视亚洲综合网 | 欧美久久电影 | 在线免费黄色 | 国产成人jvid在线播放 | 日韩av一区二区在线观看 | 日韩一区二区免费视频 | 精品国产91久久久久久 | 久久久精| av大片在线观看 |