学习资料:
北理-Python数据分析与展示-Numpy、Matplotlib、Pandas_哔哩哔哩_bilibili
python3画直方图出现“Polygon‘ object has no property ‘normed”_心际花园的博客-CSDN博客_polygon object
饼图擅长展示百分数类型的数据
plt.pie(sizes,explode=explode,labels=labels,autopct='%1.1f%%',shadow=False,startangle=90)
sizes:各扇形所占圆形面积的百分比
explode:突出扇形的位置和程度
labels:各扇形图的标签
autopct:表示中间显示百分数的方式;
shadow:表示是否添加阴影效果;
startangle:表示饼图起始的角度
import matplotlib.pyplot as plt
labels='Frogs','Hogs','Dogs','Logs' #各扇形图的标签
sizes=[15,30,45,10] #各扇形所占圆形面积的百分比
explode=(0,0.1,0,0) #突出扇形的位置和程度
plt.pie(sizes,explpde=explode,labels=labels,autopct='%1.1f%%',shadow=False,startangle=90)
#autopct表示中间显示百分数的方式;shadow表示是否添加阴影效果;startangle表示饼图起始的角度
# plt.axis('equal') 将饼图绘制成正圆形
plt.show()
plt.hist(a,40,density=True,histtype='stepfilled',facecolor='b',alpha=0.75)
a:传入的数组
第二个参数bin表示生成的图形中直方的个数
density:传入False时,对应纵坐标代表的是每个直方代表的区间内出现元素的个数,传入True时表示将每个直方所指的元素出现的个数归一化为出现的概率
import numpy as np
import matplotlib.pyplot as plt
np.random.seed(0) # 设定随机种子
mu,sigma=100,20 # 设定均值和方差
a=np.random.normal(mu,sigma,size=100)
# 生成均值和方差给定的,元素服从正态分布的数组a
plt.hist(a,40,density=True,histtype='stepfilled',facecolor='b',alpha=0.75)
# 第二个参数bin表示生成的图形中直方的个数
# normed=0/density=False表示每个直方代表的区间内出现元素的个数
# normed=1/density=True表示将每个直方所指的元素出现的个数归一化为出现的概率
plt.title('Histogram') #添加标题
plt.show()
极坐标图:在角度空间内展示数据,不太常用
import numpy as np
import matplotlib.pyplot as plt
N=20 #绘制极坐标图中数据的个数
theta=np.linspace(0.0,2*np.pi,N,endpoint=False)
#从0到2pi按照个数等分出N个不同的角度
radii=10*np.random.rand(N)
#随机生成每个角度对应的值
width=np.pi/4*np.random.rand(N) #随机生成宽度值
ax=plt.subplot(111,projection='polar')
#111表示绘制出一个绘图区域 progection表示绘制极坐标图
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()
import numpy as np
import matplotlib.pyplot as plt
fig,ax=plt.subplots()
#fig表示图表,ax表示图表相关的区域
#subplot()传入参数为空时默认生成111这一个绘图区域,这个区域的对象就是当前绘制的对象即ax
ax.plot(10*np.random.randn(100),10*np.random.randn(100),'o')
# randn()生成服从正态分布的随机数,10*表示点的坐标扩大十倍(更加分散),‘o’表示每个点的标记形式
ax.set_title('Simple Scatter')
# set_title()设置标题
plt.show()
本次学习用时1小时30分
明天学习Pandas库
去成为你想要成为的人吧