介紹
plotly plotly是一個可交互,基於瀏覽器的繪圖庫,主打功能是繪制在線可交互的圖表,所繪制出來的圖表真的賞心悅目。
它所支持的語言不只是Python,還支持諸如r,matlab,javescript等語言。plotly繪制的圖能直接在jupyter中查看,也能保存為離線網頁,或者保存在plot.ly雲端服務器內,以便在線查看。
官網:
https://plotly.com/
開發文檔:
https://plotly.com/python/
plotly安裝:
pip install plotly
plotly 兩種方式繪制圖表:
Plotly是集成了在線通過菜單操作繪圖與離線通過代碼繪圖多種繪圖方式的繪圖系統。如果使用在線方式,在使用plotly的時候,需要在官網注冊一個個人賬號,設置個人密碼。
在線:將你的可視化圖像保存到網站上,便於共享和保存。
離線:直接在本地生成可視化圖像,便於使用。
plotly繪圖支持繪圖種類
- 基本圖表:20種
- 統計和海運方式圖:12種
- 科學圖表:21種
- 財務圖表:2種
- 地圖:8種
- 3D圖表:19種
- 報告生成:4種
- 連接數據庫:7種
- 擬合工具:3種
- 流動圖表:4種
- JavaScript添加自定義控件:13種
使用plotly
在線繪圖:web端可視化
首先注冊一個plotly賬號,在用戶頭像–setting–API Keys下生成API key
import plotly.plotly as py import plotly.graph_objs as go plotly.tools.set_credentials_file(username='your_name', api_key='your_keys') trace0 = go.Scatter( x=[1, 2, 3, 4], y=[10, 15, 13, 17] ) trace1 = go.Scatter( x=[1, 2, 3, 4], y=[16, 5, 11, 9] ) data = [trace0, trace1] py.plot(data, filename = 'basic-line', auto_open=True)
離線繪圖
網頁輸出式繪圖:plotly提供了每個繪圖函數的離線版本,生成html文件。
import plotly import plotly.graph_objs as go plotly.offline.plot({ "data": [go.Scatter(x=[1, 2, 3, 4], y=[4, 3, 2, 1])], "layout": go.Layout(title="hello world") }, auto_open=True)
輸出靜態圖片
plotly.py 支持靜態圖片輸出。plotly.io.to_image能將plotly 圖表轉為靜態圖
import plotly.graph_objs as go import plotly.io as pio trace1 = [go.Scatter(x=[1,2,3], y=[4,5,6], marker={'color': 'red', 'symbol': 104, 'size': 10}, mode="markers+lines", text=["one","two","three"], name='1st Trace')] layout=go.Layout(title="First Plot", xaxis={'title':'x1'}, yaxis={'title':'x2'}) figure=go.Figure(data=trace1,layout=layout) static_image_bytes = pio.to_image(figure, format='png') from IPython.display import Image Image(static_image_bytes)
如果要保存靜態圖片,plotly.io.write_image能將圖片轉為包括png,jpg,pdf,svg,eps在內的多種格式。
更多參考: