發表文章

目前顯示的是 7月, 2019的文章

分享提取圖表數據的神器WebPlotDigitizer

markdown 有時候在搜尋期刊文獻或是網路資料的時候看到一張圖表 多數情況是不會提供Raw Data的 若想獲得這個圖表的詳細數值或是重新繪製都是困難的 今天就來分享一個神器[WebPlotDigitizer](https://automeris.io/WebPlotDigitizer/tutorial.html) 可以對數據可視化的圖片進行反向工程以提取數值數據 * 適用於各種圖表(XY,長條圖,極地圖,三元圖,地圖等...) * 自動提取可以輕鬆提取大量數據點 * 免費使用,[開源](https://github.com/ankitrohatgi/WebPlotDigitizer)和跨平台(網頁和線軟體) * 可量測各式各樣的距離或角度 今天簡短的以網頁板本作介紹[WebPlotDigitizer Online]( https://apps.automeris.io/wpd/index.zh_CN.html) 首先先匯入圖片 ![](https://i.imgur.com/NQfyNYa.png) 選擇圖片類型(這次以簡單二為數據展示) ![](https://i.imgur.com/dQWQBBv.png) 依照順序設定X1, X2, Y1, Y2 ![](https://i.imgur.com/mSpXiSo.png) ![](https://i.imgur.com/zgy4OGF.png) 輸入X1, X2, Y1, Y2相對的數值 ![](https://i.imgur.com/53OFtsD.png) 初步篩選建議以畫筆方式搭配顏色篩選將選定圖表資料 ![](https://i.imgur.com/3IsRK1Z.gif) 再以手動的方式進行資料點提取 ![](https://i.imgur.com/pRl1KKN.gif) 篩選結束後就可以查看數據結果 ![](https://i.imgur.com/cI2B5LN.png) 可以簡單設定有效位數之後選擇輸出格式 最酷的是可以輸出至Plotly中 Plotly是我們在R語言中常用的互動式圖表套件 ![](https://i.imgur.com/5OrhdmQ.png) [展示網址](https://plot.ly/~gtgrth/1/) # 官方介紹you

盒鬚圖(Boxplot) 中顯示最大最小值 R 與 Sigmaplot 繪製方法

markdown 最近一位朋友詢問在Sigmaplot中無法顯示最大最小值 在[一圖勝千表_數據可視化_基本圖表篇](/LphJAeGFTVKIMT-FP0giNg)中有介紹到 箱型圖是一種用作顯示一組數據分散情況資料的統計圖 盒鬚圖可以呈現許多資訊例如集中趨勢(中位數,平均值和分布模式) 用來比較群組間的差異是很好的 ![](https://i.imgur.com/9zd7jIC.jpg) 在Sigmaplot中預設是會顯示離群值(outlier) 而離群值並不是最大或最小值 這邊用一個範例來看在第8廠的地方有一個29的數值 但在盒鬚圖中並沒辦法顯示出來 ![](https://i.imgur.com/9K6FyHy.png) ![](https://i.imgur.com/YvkTC4R.png) Sigmaplot試過一些方法都無法解決 最後利用R來處理 在[一圖勝千表_數據可視化_基本圖表篇](/LphJAeGFTVKIMT-FP0giNg)中也有提到一圖形稱為小提琴圖(violin plot)算是盒鬚圖的變形 也可以用來顯示資料的分布但並不是敘述統計上的資訊 而是實際的數值分布情況結果如下 ![](https://i.imgur.com/8DGMXbv.png) --- 數據準備另存成CSV檔 ![](https://i.imgur.com/phetRgw.png) # R程式碼 ```R=1 install.packages("ggplot2") #安裝ggplot2套件 library(ggplot2) #載入ggplot2套件 Data_flie <- file.choose() #選取檔案位址 PointData <- read.csv(Data_flie) #讀取檔案 PointData <- data.frame(PointData) #轉換成為Data from qplot(廠商,次數,data = PointData,geom = "violin",fill = 廠商,main = "各廠家點數") #繪製小提琴圖 ``` 最後一行改成 ```R=6 qplot(廠商,次數,data = PointData,geom

雷達圖(Log座標) R 與 Sigmaplot 繪製方法

markdown 雷達圖(_radar chart_)亦稱為蜘蛛網圖 今天將講解如何畫出下圖 ![](https://i.imgur.com/wAQnPaL.png) # 資料集準備 資料的準備需頭尾相同 不然其折線不會相連 ![](https://i.imgur.com/JEdAGr6.png) 選擇繪製類型 ![](https://i.imgur.com/krjsxX1.png) 依照需求選取資料欄位 ![](https://i.imgur.com/r0t7Oqd.gif) 之後會發現圖片非常醜 最主要原因在於其數據級距相差太多 ![](https://i.imgur.com/HUpjBE0.png) 之後對於其圖形參數進行修改 因步驟過多我錄製成一部影片大家可以隨著影片操作 **[影片連結](https://youtu.be/MVrMaXUKvho)** # R 繪製雷達圖 ## 數據準備 以Excel建立如下圖的矩陣 先對於其數值取LOG 第一列輸入名稱 而第二三列輸入上下界範圍 之後輸入各組數據即可 ![](https://i.imgur.com/EYEyKHb.png) 並以另存新檔的方式將檔案純為CSV檔 之後大家可以將下方程式碼輸入於R 或是 Rstudio中進行執行 ## 首次使用所需安裝套件(執行程式碼) ```ruby=1 ## Version 1.1.463 ## coding: utf-8 ## Create a logarithmic scale of radar chart in R install.packages("fmsb") install.packages("ggplot2") install.packages("latex2exp") ``` ## 執行相關程式碼 ```ruby=10 #載入相關套件 library(ggplot2) library(fmsb) library(latex2exp) Data_flie <- file.choose() #選取資料檔 Data <- read.csv(Data_flie, row.names = 1) samplenum