當前位置:
首頁 > 知識 > 可視化神器——Plotly

可視化神器——Plotly

數據分析離不開數據可視化。我們最常用的就是pandas,matplotlib,pyecharts當然還有Tableau,看到一篇文章介紹plotly製圖後我也躍躍欲試,查看了相關資料開始嘗試用它製圖

Plotly 是一款用來做數據分析和可視化的在線平台,功能非常強大,可以在線繪製很多圖形比如條形圖、散點圖、餅圖、直方圖等等。而且還是支持在線編輯,以及多種語言python、javascript、matlab、R等許多API。它在python中使用也很簡單,直接用pip install plotly就可以了。推薦最好在jupyter notebook中使用,pycharm操作不是很方便。使用Plotly可以畫出很多媲美Tableau的高質量圖:

可視化神器——Plotly

plotly製圖.png

我嘗試做了折線圖、散點圖和直方圖,代碼如下:

首先導入庫

from plotly.graph_objs import Scatter,Layout
import plotly
import plotly.offline as py
import numpy as np
import plotly.graph_objs as go
#setting offilne
plotly.offline.init_notebook_mode(connected=True)

上面幾行代碼主要是引用一些庫,plotly有在線和離線兩種模式,在線模式需要有賬號可以雲編輯。我選用的離線模式,plotly設置為offline模式就可以直接在notebook裡面顯示了。

1.製作折線圖

N = 100
random_x = np.linspace(0,1,N)
random_y0 = np.random.randn(N)+5
random_y1 = np.random.randn(N)
random_y2 = np.random.randn(N)-5
#Create traces
trace0 = go.Scatter(
x = random_x,
y = random_y0,
mode = "markers",
name = "markers"
)
trace1 = go.Scatter(
x = random_x,
y = random_y1,
mode = "lines+markers",
name = "lines+markers"
)
trace2 = go.Scatter(
x = random_x,
y = random_y2,
mode = "lines",
name = "lines"
)
data = [trace0,trace1,trace2]
py.iplot(data)

可視化神器——Plotly

折線圖.png

隨機設置4個參數,一個x軸的數字和三個y軸的隨機數據,製作出三種不同類型的圖。trace0是markers,trace1是lines和markers,trace3是lines。然後把三種圖放在data這個列表裡面,調用py.iplot(data)即可。

繪製的圖片系統默認配色也挺好看的~


2.製作散點圖

trace1 = go.Scatter(
y = np.random.randn(500),
mode = "markers",
marker = dict(
size = 16,
color = np.random.randn(500),
colorscale = "Viridis",
showscale = True
)
)
data = [trace1]
py.iplot(data)

把mode設置為markers就是散點圖,然後marker裡面設置一組參數,比如顏色的隨機範圍,散點的大小,還有圖例等等。

可視化神器——Plotly

散點圖.png


3.直方圖

trace0 = go.Bar(
x = ["Jan","Feb","Mar","Apr", "May","Jun",
"Jul","Aug","Sep","Oct","Nov","Dec"],
y = [20,14,25,16,18,22,19,15,12,16,14,17],
name = "Primary Product",
marker=dict(
color = "rgb(49,130,189)"
)
)
trace1 = go.Bar(
x = ["Jan","Feb","Mar","Apr", "May","Jun",
"Jul","Aug","Sep","Oct","Nov","Dec"],
y = [19,14,22,14,16,19,15,14,10,12,12,16],
name = "Secondary Product",
marker=dict(
color = "rgb(204,204,204)"
)
)
data = [trace0,trace1]
py.iplot(data)

可視化神器——Plotly

直方圖.png

直方圖是我們比較常用的一種圖形,plotly繪製直方圖的方式跟我們在pandas裡面設置的有點類似,他們非常直觀的體現了不同月份兩個生產力之間的差異。

上面的製圖只是plotly的冰山一角,都是一些最基本的用法,它還有很多很酷的用法和圖形,尤其是跟pandas結合畫的圖非常漂亮。比如一些股票的K線圖,大家有興趣可以研究研究~

喜歡這篇文章嗎?立刻分享出去讓更多人知道吧!

本站內容充實豐富,博大精深,小編精選每日熱門資訊,隨時更新,點擊「搶先收到最新資訊」瀏覽吧!


請您繼續閱讀更多來自 極客教程 的精彩文章:

快速理解Token,Cookie,Session
DOM探索之-DOM的地位

TAG:極客教程 |