matplotlib·2(绘制饼图,直方图,极坐标图,复杂子区域分割)


import numpy as np
import matplotlib.pyplot as plt

# 绘制饼图
labels = 'x', 'y', 'z', 'm'  # 坐标轴名称
size = [100, 230, 340, 343]
explode = (0, 0.1, 0, 0)  # 使得y的数据突出
plt.subplot2grid((3, 3), (0, 0), colspan=2)
plt.pie(size, explode=explode, labels=labels, autopct='%1.1f%%', shadow=False, startangle=8)  # autopct会显示占比
plt.axis('equal')  # 使得饼图是个正圆

# 绘制直方图
a = np.random.normal(100, 20, size=100)  # 生成均值为100,方差为20100个数,格式为矩阵
plt.subplot2grid((3, 3), (1, 2), colspan=3)  # colspan代表分割块的序号
plt.hist(a, bins=20, density=1, histtype='stepfilled', facecolor='b', alpha=0.5)
# bins=b20:从最大到最小生成20个区间
# density=1:出现次数变为概率展示
# alpha=0.5:颜色深度


# 绘制极坐标图
n = 20  # 划分区间数
theta = np.linspace(0.0, 2 * np.pi, n, endpoint=False)
radii = 10 * np.random.rand(n)
width = np.pi / 4 * np.random.rand(n)
# ax=plt.subplot(111,projection='polar')projection='polar'绘制极坐标图指令
# 使用plt.subplot()方法是面向对象的绘制方法,ax是一个对象
ax = plt.subplot2grid((3, 3), (1, 0), colspan=1, 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.savefig('C://Users/Administrator/Desktop/test1.png', dpi=800)
plt.show()

结果展示
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值