pyplot的基础图标函数
函数 |
说明 |
plt.plot(x,y,fmt,...) |
绘制一个坐标图 |
plt.boxplot(data,notch,position) |
绘制一个箱型图 |
plt.bar(left,height,width,bottom) |
绘制一个条形图 |
plt.barh(width,bottom,left,height) |
绘制一个横向条形图 |
plt.polar(theta,r) |
绘制极坐标图 |
plt.pie(data,explode) |
绘制饼图 |
plt.psd(x,NFFT=256,pad_to,Fs) |
绘制功率谱密度图 |
plt.specgram(x,NFFT=256,pad_to,Fs) |
绘制谱图 |
plt.cohere(x,y,NFFT=256,Fs) |
绘制X-Y的相关函数 |
plt.scatter(x,y) |
绘制散点图,其中XY长度相同 |
plt. step(x,y,where) |
绘制步阶图 |
plt.hist(x,bins,normed) |
绘制直方图 |
plt.contour(x,y,z,n) |
绘制等值图 |
plt.vlines() |
绘制垂直图 |
plt.stem(x,y,linefmt,markermt) |
绘制柴火图 |
plt.plot_date() |
绘制数据日期 |
常用图形
饼图的绘制
import matplotlib.pyplot as plt
labels = 'spirit', 'expire', 'aspire', 'inspire' # 定义标签
sizes = [10, 15, 45, 30] # 分别给出每个标签对应的尺寸
explode = (0, 0.1, 0, 0) # 将比列为15的部分突出
plt.pie(sizes, explode=explode, labels=labels, autopct='%1.1f%%', shadow=False, startangle=90)
# 参数分别是:尺寸,凸出部分,标签,饼图数据的展示格式,是否有阴影,饼图起始角度
plt.show()
直方图的绘制
import matplotlib.pyplot as plt
import numpy as np
np.random.seed(0) # 设定随机种子
mu, sigma = 100, 20 # 均值和标准差
a = np.random.normal(mu, sigma, size=100) # 调用函数生产均值,方差给定的数组a(正态分布)
plt.hist(a, 20, histtype='stepfilled', facecolor='b', alpha=0.65) # 第二个参数20指直方图个数
plt.title('disguise')
plt.show()
散点图的绘制
import matplotlib.pyplot as plt
import numpy as np
fig, ax = plt.subplots()
ax.plot(10*np.random.randn(100),10*np.random.randn(100), 'o')
ax.set_title('feeble')
plt.show()
极坐标绘制
import matplotlib.pyplot as plt
import numpy as np
N = 20 # 数据个数
theta = np.linspace(0.0, 2*np.pi, N, endpoint=False) # 利用linspace函数在0-360度等分出N份
radii = 10*np.random.rand(N) # 生产每个角度对于的值
width = np.pi/4*np.random.rand(N) # 宽度值
ax = plt.subplot(111,projection='polar') # 绘图区域
bars = ax.bar(theta, radii, width=width, bottom=0.0) # 参数意义:开始位置,绘制的图的高度,绘制的图的宽度(每一份)
for r, bar in zip(radii,bars): # 颜色设定
bar.set_facecolor(plt.cm.viridis(r/10.))
bar.set_alpha(0.5)
plt.show()