直方图
-
参数只有一个x,一维数据
-
hist()的参数
- bins: 可以是一个bin数量的整数值,也可以是表示bin的一个序列。默认值为10
- density: 如果值为True,直方图的值将进行归一化处理,形成概率密度,默认值为False
- color : 单一颜色值或颜色的序列
- orientation: horizontal创建水平直方图,默认值为vertical
n = np.random.randint(0, 10, size=10)
n
np.histogram(n)
plt.hist(n)
绘图
plt.hist(n)
水平方向
plt.hist(n, density=True, bins=20, color='r', orientation='horizontal')
条形图
-
必须传两个参数,是二维
-
bar(), barh()
-
适合比较各部分的大小
plt.bar(np.arange(0,10), n, color='r', width=0.8)
水平条形图: barh()plt.barh(np.arange(0,10), n, color='r')
饼图
-
只有一个参数,一维
-
pie()
-
适合展示各部分占总体的比例
plt.figure(figsize=(8,8)) n = [1,2,3,4] # pct = pecentage export plt.pie(n, autopct='%.2f%%', labels=list('ABCD'), pctdistance=0.8, labeldistance=1, shadow=True, explode=[0.1, 0.2, 0.1, 0.3], colors=['r', 'g', 'b', 'y'], startangle=60, counterclock=False, radius=1, wedgeprops = {'linewidth': 5},textprops=dict(fontsize=20, color='r'))
普通未占满饼图
n = [0.1, 0.2, 0.4, 0.2] plt.pie(n)
饼图阴影、分裂等属性设置
散点图
-
需要两个参数x,y,但此时x不是表示x轴的刻度,而是每个点的横座标
-
两个一维数组之间的关系
x = np.linspace(0, 2*np.pi, 10) y = np.sin(x)
s表示点的大小,c:颜色(这里用random+cmap组合使用), mark:点的形状
alpha:透明度
plt.scatter(x, y, s=200, c=np.random.rand(10,3), marker='d', cmap='rainbow', alpha=0.5)
例子
x = np.random.randn(500)
y = np.random.randn(500)
plt.figure(figsize=(10,6))
# RGBA
plt.scatter(x,y, marker='d', c=np.random.rand(500,4), cmap='rainbow', s=np.random.randint(0,300, size=150))