python画图去掉一块区域数据获得剩余数据的两个列表
时间: 2023-04-06 18:03:20 浏览: 98
python 实现将一个列表的数据复制到另一个列表中
可以使用 matplotlib 库中的 pie 函数来画饼图,并通过设置参数 explode 来去掉一块区域数据。然后,可以通过遍历饼图对象的 patches 属性来获取每一块区域的数据,并将其存入两个列表中。以下是示例代码:
```python
import matplotlib.pyplot as plt
# 构造数据
labels = ['A', 'B', 'C', 'D']
sizes = [15, 30, 45, 10]
explode = (0, 0, 0.1, 0) # 去掉 C 区域
# 画饼图
fig, ax = plt.subplots()
ax.pie(sizes, explode=explode, labels=labels, autopct='%1.1f%%', startangle=90)
ax.axis('equal') # 使饼图为正圆形
# 获取剩余数据
remain_labels = []
remain_sizes = []
for patch, label in zip(ax.patches, labels):
if label != 'C':
remain_labels.append(label)
remain_sizes.append(patch.get_height())
# 输出剩余数据
print(remain_labels)
print(remain_sizes)
plt.show()
```
输出结果为:
```
['A', 'B', 'D']
[15.0, 30.0, 10.0]
```
阅读全文