你能写一段代码用matplotlib绘制饼图吗
时间: 2023-06-05 08:05:24 浏览: 126
?当然可以,下面是一个使用matplotlib绘制饼图的简单示例代码:
```python
import matplotlib.pyplot as plt
# 定义数据
labels = ['A', 'B', 'C', 'D']
sizes = [15, 30, 45, 10]
colors = ['red', 'blue', 'green', 'yellow']
# 绘制饼图
plt.pie(sizes, labels=labels, colors=colors, autopct='%1.1f%%', startangle=90)
# 添加标题
plt.title('Pie Chart')
# 显示图形
plt.show()
```
该代码将生成一个带有四个扇形的饼图,每个扇形的大小与给定的 `sizes` 列表中的元素对应,标签为 `labels` 中的值,颜色为 `colors` 中的颜色。在此示例中,饼图是用 `plt.pie()` 函数创建的,通过传递 `autopct` 参数可以将百分比值添加到每个扇形的中心,它表示小数位数为1的百分比形式。同时也可以通过 `startangle` 参数来设置饼图的起始角度。最后,使用 `plt.show()` 函数显示图形窗口。
相关问题
matplotlib绘制饼图
Matplotlib是Python中一个常用的绘图库,可以用它来绘制各种类型的图形,包括饼图。下面是一个使用Matplotlib绘制饼图的示例代码:
```python
import matplotlib.pyplot as plt
# 定义饼图数据
labels = ['A', 'B', 'C', 'D', 'E']
sizes = [15, 30, 20, 10, 25]
# 绘制饼图
fig1, ax1 = plt.subplots()
ax1.pie(sizes, labels=labels, autopct='%1.1f%%', startangle=90)
ax1.axis('equal') # 确保饼图为正圆形
# 显示图形
plt.show()
```
在这个代码中,我们首先定义了饼图的数据,即标签和各个部分所占的比例。然后,使用`plt.subplots()`创建一个画布和一个子图,并使用`ax1.pie()`函数绘制饼图。该函数的参数包括饼图数据、标签、百分比格式、起始角度等。最后,使用`ax1.axis('equal')`确保饼图为正圆形,然后使用`plt.show()`显示图形。
运行这段代码,你将得到一个简单的饼图,如下所示:

python 删除一行值都为0的行 选取表格的几个特定行使用matplotlib 绘制饼图及直方图
删除一行值都为0的行:
假设有一个二维列表data,其中行数为n,列数为m。可以通过以下代码删除所有值都为0的行:
```
data = [[1,0,3],[0,0,0],[4,0,6]]
data = [row for row in data if sum(row)!=0]
print(data)
```
这段代码先遍历每一行,计算每一行的和sum(row),如果sum(row)不等于0,则选择该行保留。最终输出删除所有值都为0的行后的data。
选取表格的几个特定行使用matplotlib 绘制饼图及直方图:
假设有一个数据表格data,其中有3列:城市、销售额、利润。现在要选取其中的几个城市,绘制饼图和直方图。
首先,需要用pandas库读取数据表格,并选取需要的城市:
```
import pandas as pd
import matplotlib.pyplot as plt
data = pd.read_csv('data.csv')
selected_cities = ['北京', '上海', '广州', '深圳']
data_selected = data[data['城市'].isin(selected_cities)]
```
这段代码选取了城市为北京、上海、广州、深圳的行,并保存到data_selected中。
接下来,可以用matplotlib库绘制饼图和直方图:
```
# 绘制饼图
sales = data_selected['销售额'].sum()
profits = data_selected['利润'].sum()
labels = ['销售额', '利润']
sizes = [sales, profits]
colors = ['yellowgreen', 'gold']
plt.pie(sizes, labels=labels, colors=colors, autopct='%1.1f%%')
plt.axis('equal')
plt.title('北京、上海、广州、深圳的销售额和利润')
# 绘制直方图
plt.figure()
plt.hist(data_selected['销售额'], bins=10, alpha=0.5, label='销售额')
plt.hist(data_selected['利润'], bins=10, alpha=0.5, label='利润')
plt.legend(loc='upper right')
plt.title('北京、上海、广州、深圳的销售额和利润')
plt.show()
```
这段代码首先计算了选取城市的销售额和利润,然后用pie函数绘制饼图,用hist函数绘制直方图。最后用show函数显示图形。
阅读全文
相关推荐













