標準的Python中用列表(list)保存一組值,能夠看成數組使用。但因爲列表的元素能夠是任何對象,所以列表中保存的是對象的指針。這樣一來,爲了保存一個簡單的列表[1,2,3],就需
要有三個指針和三個整數對象。對於數值運算來講,這種結構顯然比較浪費內存和 CPU 計算時間。python
使用numpy的array模塊能夠解決這個問題。細節不在此贅述。這裏主要記錄一些matplotlib的基本使用方法數組
first plot
#first plot with matplotlib import matplotlib.pyplot as plt plt.plot([1,3,2,4]) plt.show()
in order to avoid pollution of global namespace, it is strongly recommended to never import like:dom
from import *spa
simple plot
import matplotlib as mpl import matplotlib.pyplot as plt import numpy as np x = np.arange(0.0,6.0,0.1) plt.plot(x, [xi**2 for xi in x],label = 'First',linewidth = 4,color = 'black') plt.plot(x, [xi**2+2 for xi in x],label = 'second',color = 'red') plt.plot(x, [xi**2+5 for xi in x],label = 'third') plt.axis([0,7,-1,50]) plt.xlabel(r"$\alpha$",fontsize=20) plt.ylabel(r'y') plt.title('simple plot') plt.legend(loc = 'upper left') plt.grid(True) plt.savefig('simple plot.pdf',dpi = 200) print mpl.rcParams['figure.figsize'] #return 8.0,6.0 print mpl.rcParams['savefig.dpi'] #default to 100 the size of the pic will be 800*600 #print mpl.rcParams['interactive'] plt.show()
Python-33d
Decorate plot with styles and types
import matplotlib as mpl import matplotlib.pyplot as plt import numpy as np x = np.arange(0.0,6.0,0.1) plt.plot(x, [xi**2 for xi in x],label = 'First',linewidth = 4,color = 'black') #using color string to specify color plt.plot(x, [xi**2+2 for xi in x],'r',label = 'second') #using abbreviation to specify color plt.plot(x, [xi**2+5 for xi in x],color = (1,0,1,1),label = 'Third') #using color tuple to specify color plt.plot(x, [xi**2+9 for xi in x],color = '#BCD2EE',label = 'Fourth') #using hex string to specify color plt.xticks(np.arange(0.0,6.0,2.5)) plt.xlabel(r"$\alpha$",fontsize=20) plt.ylabel(r'y') plt.title('simple plot') plt.legend(loc = 'upper left') plt.grid(True) plt.savefig('simple plot.pdf',dpi = 200) print mpl.rcParams['figure.figsize'] #return 8.0,6.0 print mpl.rcParams['savefig.dpi'] #default to 100 the size of the pic will be 800*600 #print mpl.rcParams['interactive'] plt.show(
image指針
types of graph
imagecode
Bars import matplotlib.pyplot as plt import numpy as np dict = {'A': 40, 'B': 70, 'C': 30, 'D': 85} for i, key in enumerate(dict): plt.bar(i, dict[key]); plt.xticks(np.arange(len(dict))+0.4, dict.keys()); plt.yticks(dict.values()); plt.grid(True) plt.show()
image_1對象
Pies import matplotlib.pyplot as plt plt.figure(figsize=(10,10)); x = [4, 9, 21, 55, 30, 18] labels = ['Swiss', 'Austria', 'Spain', 'Italy', 'France', 'Benelux'] explode = [0.2, 0.1, 0, 0, 0.1, 0] plt.pie(x, labels=labels, explode=explode, autopct='%1.1f%%'); plt.show()
image_2blog
Scatter import matplotlib.pyplot as plt import numpy as np x = np.random.randn(12,20) y = np.random.randn(12,20) mark = ['s','o','^','v','>','<','d','p','h','8','+','*'] for i in range(0,12): plt.scatter(x[i],y[i],marker = mark[i],color =(np.random.rand(1,3)),s=50,label = str(i+1)) plt.legend() plt.show()