這裏利用Nathan Yau所著的《鮮活的數據:數據可視化指南》一書中的數據,學習畫圖。post
數據地址:http://datasets.flowingdata.com/us-postage.csv 學習
準備工做:先導入matplotlib和pandas,用pandas讀取csv文件,而後建立一個圖像和一個座標軸spa
import pandas as pd from matplotlib import pyplot as plt postage=pd.read_csv(r"http://datasets.flowingdata.com/us-postage.csv") fig,ax=plt.subplots()
先來看看這個數據文件:code
Year Price
0 1991 0.29
1 1995 0.32
2 1999 0.33
3 2001 0.34
4 2002 0.37
5 2006 0.39
6 2007 0.41
7 2008 0.42
8 2009 0.44
9 2010 0.44
這個數據很簡單,展現的是從1991年-2010年美國郵費的變化。blog
讓咱們來畫一個階梯圖,展示郵費的變化過程。ip
階梯圖: ax.step(x,y)get
代碼以下:pandas
import pandas as pd from matplotlib import pyplot as plt postage=pd.read_csv(r"http://datasets.flowingdata.com/us-postage.csv") fig,ax=plt.subplots(figsize=(10,4)) ax.step(postage["Year"],postage["Price"],where='post') ax.set_title("US Postage Fee") #設置標題 ax.set_xticks([i for i in postage["Year"]]) #設置x軸刻度 ax.set_yticks([]) #去除y軸刻度 #去除邊框 ax.spines["top"].set_visible(False) ax.spines["bottom"].set_visible(False) ax.spines["left"].set_visible(False) ax.spines["right"].set_visible(False) #添加文字註釋 for i,j in zip(postage["Year"],postage["Price"]): ax.text(x=i,y=j+0.003,s=j) fig.tight_layout() plt.show()
圖像以下:it