本人在學習使用Python和plotly處理數據時,通過兩個小時艱難試錯,終於完成了散點圖和折線圖的實例。在使用過程當中遇到一個大坑,由於官方給出的案例是用在線存儲的,因此須要安裝jupyter(也就是ipython)才能使用notebook來處理生成的文件,一開始我沒太懂iplot和plot之間的差別,致使浪費了不少時間。java
重要提示:最新的jupyter不支持Python3.2及如下版本。
python
最後我只能繼續採用本地文件的形式來解決這個問題了。下面放出個人測試代碼,被註釋掉的是官方給出的代碼以及離線存儲的代碼。應該是最新版的Python的方案。編程
#!/usr/bin/python # coding=utf-8 import plotly.plotly import random from plotly.graph_objs import * import plotly.graph_objs as abc # 必須 import numpy as np def sayHello(): N=100 xx = []; for i in range(20): xx.append(i) y0 = []; for i in range(20): y0.append(random.randint(0, 10)) y1 = []; for i in range(20): y1.append(random.randint(10, 20)) y2 = []; for i in range(20): y2.append(random.randint(20, 30)) #xx = np.linspace(0, 1, N) #y0 = np.random.randn(N) + 5 #y1 = np.random.randn(N) #y2 = np.random.randn(N) - 5 data_1 = abc.Scatter( x=xx, y=y0, name='test1', mode='markers' ) date_2 = abc.Scatter( x=xx, y=y1, name='test2', mode="lines" ) date_3 = abc.Scatter( x=xx, y=y2, name='test3', mode="lines+markers" ) ''' N = 1000 random_x = np.random.randn(N) random_y = np.random.randn(N) # Create a trace trace = abc.Scatter( x=random_x, y=random_y, mode='markers' ) data1 = [trace] ''' data1 = Data([data_1, date_2,date_3]) plotly.offline.plot(data1) #plotly.offline.iplot(data1,filename='test01') if __name__ == "__main__": sayHello()
下面是我最終結果的截圖:app