import matplotlib.pyplot as plt
一 折线图
x=[1,2,3,4,5,6,7,8]
y=[5,2,4,2,1,4,5,2]
#解决中文乱码问题
plt.rcParams['font.sans-serif'] = 'Microsoft YaHei'
plt.rcParams['axes.unicode_minus'] = False
plt.plot(x,y,label="折线图")
plt.xlabel("x轴")
plt.ylabel("y轴")
plt.title("折线图图例")
#展示左上角小窗
plt.legend()
plt.show()
二 柱状图
x1 = [1,3,5,7,9]
y1 = [5,2,7,8,2]
x2 =[2,4,6,8,10]
y2 = [8,6,2,5,6]
#绘制柱状图
plt.bar(x1,y1,label="柱状图-01",color="g")
plt.bar(x2,y2,label="柱状图-02",color="b")
plt.xlabel("x轴")
plt.ylabel("y轴")
plt.title("柱状图图例")
plt.legend()
plt.show()
三 条形图
x1 = [1,3,5,7,9]
y1 = [5,2,7,8,2]
x2 =[2,4,6,8,10]
y2 = [8,6,2,5,6]
#绘制条形图
plt.barh(x1,y1,label="条形图-01",color="g")
plt.barh(x2,y2,label="条形图-02",color="b")
plt.xlabel("x轴")
plt.ylabel("y轴")
plt.title("条形图图例")
plt.legend()
plt.show()
四 直方图
population_ages = [22,55,62,45,21,22,34,42,42,4,99,102,110,120,
121,122,130,111,115,112,80,75,65,54,44,43,42,48]
#区间范围
bins = [0,18,30,45,60,80]
plt.hist(population_ages,bins,histtype="bar")
plt.xlabel("年龄区间")
plt.ylabel("频数")
plt.title("年龄分布直方图")
plt.show()
五 饼图
slices = [7.0,2.0,2.0,13.0]
activities = ["sleeping","eating","working","playing"]
cols =["c","m","r","b"] #颜色
plt.pie(slices,
labels=activities,#饼图标签
colors=cols, #每个扇形区域的颜色
startangle=90, #开始绘制扇形区域的角度
shadow=True, #边的阴影
explode=(0,0.1,0,0), #扇形区域突出的比例 值越大突出越明显 值为0不突出
autopct='%1.1f%%') #以百分比的方式显示数据,保留一位小数
plt.title("饼图")
plt.show()
六 散点图
x =[1,2,3,4,5,6,7,8]
y=[5,2,4,2,1,4,5,2]
plt.scatter(x,y,
label="skitscat",
color="k",
s=25, #点的大小
marker="o") #点的类型
plt.xlabel("X")
plt.ylabel("Y")
plt.title("散点图")
plt.legend()
plt.show()
七 堆叠图
ays = [1,2,3,4,5]
sleeping = [7,8,6,11,7]
eating = [2,3,4,3,2]
working = [7,8,7,2,2]
playing = [8,5,7,8,13]
plt.stackplot(days,
sleeping,
eating,
working,
playing,
colors=list("mcrk"))
plt.xlabel("X")
plt.ylabel("Y")
plt.title("堆叠图")
plt.show()