pandas制作直方图
时间: 2023-10-28 10:45:30 浏览: 78
Pandas可以使用`hist()`函数来绘制直方图,下面是一个简单的例子:
```python
import pandas as pd
import numpy as np
import matplotlib.pyplot as plt
# 生成随机数据
np.random.seed(123)
data = np.random.randint(0, 100, size=100)
# 转换为Pandas的Series类型
s = pd.Series(data)
# 绘制直方图
s.hist(bins=10)
# 显示图形
plt.show()
```
上述代码将生成100个0到100之间的随机数,并将其转换为Pandas的Series类型,然后使用`hist()`函数绘制直方图,`bins`参数指定了直方图的柱子数。最后使用`show()`函数显示图形,效果如下图所示:
![histogram](https://cdn.jsdelivr.net/gh/Justson/AgentBlog/2021-10-10/pandas%E5%88%B6%E4%BD%9C%E7%9B%B4%E6%96%B9%E5%9B%BE.png)
相关问题
pandas制作直方图,显示最畅销的5个商品(quantity最多的5个item_name
)的销售数量分布情况。假设数据集中的商品销售数量列为"quantity",商品名称列为"item_name"。
```
import pandas as pd
import matplotlib.pyplot as plt
# 读取数据集
data = pd.read_csv("sales.csv")
# 按商品名称分组,计算销售数量总和
grouped = data.groupby("item_name").sum()["quantity"]
# 按销售数量降序排序,取前5个
top5 = grouped.sort_values(ascending=False)[:5]
# 制作直方图
plt.hist(data[data["item_name"].isin(top5.index)]["quantity"], bins=20)
# 添加标题和标签
plt.title("Top 5 Best-selling Items")
plt.xlabel("Quantity")
plt.ylabel("Frequency")
# 显示图形
plt.show()
```
解释:
首先,我们读取数据集并按商品名称分组,计算每个商品的销售数量总和。然后,我们按销售数量降序排序,取前5个最畅销的商品。接着,我们从数据集中筛选出这5个商品的销售数据,并制作直方图。最后,我们添加标题和标签,并显示图形。
注意:为了更好地展示销售数量分布情况,我们将直方图的bin数设置为20。您可以根据实际情况调整bin数。
Python读取excle制作直方图
您可以使用Python中的pandas和matplotlib库来读取Excel文件并制作直方图。首先,您需要安装这些库。可以使用以下命令安装它们:
```
pip install pandas matplotlib
```
然后,您可以使用以下代码读取Excel文件并绘制直方图:
```python
import pandas as pd
import matplotlib.pyplot as plt
# 读取Excel文件中的数据
data = pd.read_excel('data.xlsx')
# 绘制直方图
plt.hist(data['列名'], bins=10, edgecolor='black')
# 添加标题和标签
plt.title('直方图')
plt.xlabel('x轴标签')
plt.ylabel('y轴标签')
# 显示图形
plt.show()
```
在代码中,您需要将“data.xlsx”替换为您的Excel文件名,并将“列名”替换为包含要制作直方图的数据的列的名称。
此代码将绘制一个包含10个条形的直方图,并添加标题和标签。最后,它将显示绘制的图形。
阅读全文