製做提供信息的可視化是數據分析的重要任務之一。首先介紹一下matplotlib庫。dom
import matplotlib.pyplot as plt import numpy as np data = np.arange(10) print(data) plt.plot(data) plt.show()
簡單的線性圖:字體
matplotlib生成的圖位於圖片對象中,可使用plt.figure生成一個新的圖片。spa
plt.figure有一些選項,例如figsize能夠確保圖片有一個肯定的大小及存儲在硬盤時的長寬比。3d
可使用add_subplot建立一個或多個子圖。 ax1 = fig.add_subplot(2,2,1)code
上面圖片的意思是圖形爲2*2
,而且序號爲1。對象
可使用subplots_adjust調整圖的大小。blog
其中參數wspace和hspace分別控制的是圖片的寬度和高度百分比,以用做子圖間的間距。three
生成簡單隨機漫步圖表:圖片
fig = plt.figure() ax = fig.add_subplot(1,1,1) ax.plot(np.random.randn(1000).cumsum()) # 顯示中文 plt.rcParams['font.sans-serif']=['SimHei'] plt.rcParams['axes.unicode_minus'] = False # 改變軸標籤及軸 ticks = ax.set_xticks([0, 250, 500, 750, 1000]) # 字體傾斜30度 labels = ax.set_xticklabels(['one','two','three','four','five'],rotation=30,fontsize='small') ax.set_title('隨機漫步圖') ax.set_xlabel('Stages') plt.show()
結果以下:unicode
修改y軸步驟相同,軸有一個set方法容許批量設置繪圖屬性。
props = { 'title':'隨機漫步圖', 'ylabel':'Num' } ax.set(**props) plt.show()
圖例是用來區分繪圖元素的重要內容。
fig = plt.figure() ax = fig.add_subplot(1, 1, 1) ax.plot(np.random.randn(1000).cumsum(), 'k', label='one') ax.plot(np.random.randn(1500).cumsum(), 'k--', label='two') ax.plot(np.random.randn(500).cumsum(), 'k.', label='three') ax.legend() plt.show()
可使用ax.legend()
或者plt.legend
自動生成圖例。
可使用text、arrow、annote方法來添加註釋和文本。text在圖標上給定左表