Python:畫圖之不錯的折線圖程式碼
阿新 • • 發佈:2019-02-06
這是一個師兄交付的程式碼中的一段,他這個方法畫出來的圖是真的很好用,自己現在畫什麼都用這個方法來畫,所以分享給大家。
import下面一段為簡單的賦值,df_part1是三條線的橫座標,為時間字串;剩下的df_part234分別為一些隨機數。
import numpy as np import datetime from plotly.graph_objs import * import plotly.offline as py_offline import random df_part1 = [] df_part2 = [] df_part3 = [] df_part4 = [] for i in np.arange(20180501,20180531,1): i = str(i) a = datetime.datetime.strptime(i, '%Y%m%d') df_part1.append(a) df_part2.append(random.uniform(0, 30)) df_part3.append(random.uniform(10, 20)) df_part4.append(random.uniform(5, 50)) scatter_1 = Scatter( x=df_part1, y=df_part2, mode='lines', name='abc_1' ) scatter_2 = Scatter( x=df_part1, y=df_part3, mode='lines', name='abc_2' ) scatter_3 = Scatter( x=df_part1, y=df_part4, mode='lines', name='abc_3' ) plot_data = Data([scatter_1,scatter_2,scatter_3]) layout = Layout( title='tryingline' ) fig = Figure(data=plot_data, layout=layout) py_offline.plot(fig, filename='try') layout = Layout( title='try', showlegend=False )
生成的是一個HTML檔案,檔名為try。
首先,我覺得X軸的時間寫法挺好看的;
其次,三條線畫在這一張畫布上,右上角的小圖示,可以選擇顯示哪條線;
最後,在畫布上框選部分割槽域,可以區域性放大,而且不失真。如果資料量比較大,可以清晰地區域性放大真的非常有用。
放大前:
放大後: