要import這個import那個,實在太多了
所以我打算每次都先import這些函式庫,之後再找時間看能不能寫成一個檔的方法,把要ipmort的東西都寫進去,之後只要import這個就好了
# for graph:
import matplotlib.pyplot as plt
import plotly
# import plotly.plotly as py
# import plotly.graph_objs as go
# plotly.offline.init_notebook_mode()
from plotly.offline import download_plotlyjs, init_notebook_mode, iplot
from plotly.graph_objs import *
init_notebook_mode() # 記得用iplot就好,不用py.iplot 才會是offline模式
import cufflinks as cf
%reload_ext autoreload
%autoreload 2
cf.set_config_file(world_readable=True,theme='pearl')
matplotlib 雖然是畫圖大庫,但缺點就是沒有互動功能,所以要及時看數據上的資料時其實很不便
所以基本上我都會用plotly和cufflinks這兩個
cufflinks其實也是plotly的副產品,只是他是專門處理pandas的工具
cufflinks其實算是pandas繪圖懶人包,只要給他dataframe 然後在cf.iplot( .....)裡面點點點的地方打上要畫圖的type,顏色,title 等等就大功告成
他還有個優點,就是提供了趨勢線的功能(best fit)
不過缺點呢,就是當我要處理outliers的時候 沒辦法針對那些出局的數據另外標示出我要的顏色
這滿令人頭疼的,因為這不就代表說只能繪出趨勢,但沒辦法讓人知道哪些數據是有問題的嗎?
也可能我太嫩 所以不知道如何寫(但我看了文檔,似乎是沒辦法吧)
針對這部份就要用到plotly的原生函式 py.iplot()就可以了
所以基本上我都會用plotly和cufflinks這兩個
cufflinks其實也是plotly的副產品,只是他是專門處理pandas的工具
cufflinks其實算是pandas繪圖懶人包,只要給他dataframe 然後在cf.iplot( .....)裡面點點點的地方打上要畫圖的type,顏色,title 等等就大功告成
他還有個優點,就是提供了趨勢線的功能(best fit)
不過缺點呢,就是當我要處理outliers的時候 沒辦法針對那些出局的數據另外標示出我要的顏色
這滿令人頭疼的,因為這不就代表說只能繪出趨勢,但沒辦法讓人知道哪些數據是有問題的嗎?
也可能我太嫩 所以不知道如何寫(但我看了文檔,似乎是沒辦法吧)
針對這部份就要用到plotly的原生函式 py.iplot()就可以了
以下是利用plotly畫outlier得圖以及原始碼:
import plotly
import plotly.plotly as py
import plotly.graph_objs as go
import numpy as np
plotly.offline.init_notebook_mode()
N = 500
x0= np.linspace(0,100, num=N)
y0= np.random.normal(size=N)
trace0 = go.Scatter(
x =x0[np.abs(y0)<1],
y= y0[np.abs(y0)<1],
name = 'inliers',
mode = 'markers',
marker = dict(
size = 16,
color = 'rgb(204, 204, 204)',
line = dict(
width = 2,
color = 'b'
)
)
)
trace1 = go.Scatter(
x =x0[np.abs(y0)>1],
y= y0[np.abs(y0)>1],
name = 'outliers',
mode = 'markers',
marker = dict(
size = 16,
color = 'rgb(102, 102, 102)',
line = dict(
width = 2,
color = 'b'
)
)
)
data = [trace1, trace0]
layout = dict(title = 'Styled Scatter',
yaxis = dict(zeroline = True),
xaxis = dict(zeroline = True),
paper_bgcolor='rgb(254, 247, 234)',
plot_bgcolor='rgb(254, 247, 234)',
)
fig = dict(data=data, layout=layout)
py.iplot(fig, filename='styled-scatter')
另外要提的就是,plotly如果用online一天只能在ide上使用50次,web上100次,除非付費.
但用offline就可以一直用了~
這封郵件來自 Evernote。Evernote 是您專屬的工作空間,免費下載 Evernote |
0 意見:
張貼留言