使用python,使用20个data,绘制20列箱线图
时间: 2024-05-11 08:19:18 浏览: 72
Python使用plt.boxplot() 参数绘制箱线图
好的,首先需要导入必要的库。我们使用 pandas 来读取数据和处理数据,使用 matplotlib 来绘制箱线图。
```python
import pandas as pd
import matplotlib.pyplot as plt
```
然后我们读取数据。这里我假设数据都是 CSV 格式的,且文件名为 `data1.csv` 到 `data20.csv`。
```python
data = []
for i in range(1, 21):
filename = f"data{i}.csv"
df = pd.read_csv(filename, header=None)
data.append(df[0])
```
现在 `data` 是一个包含了 20 个 pandas.Series 的列表。每个 Series 包含了一个数据集。
接下来我们可以使用 matplotlib 绘制箱线图。我们可以使用 for 循环来逐个绘制每个数据集的箱线图。
```python
fig, ax = plt.subplots(figsize=(10, 6))
# 绘制箱线图
ax.boxplot(data)
# 设置 x 轴标签
ax.set_xticklabels([f"Data {i}" for i in range(1, 21)])
# 显示图形
plt.show()
```
这里我们设置了图形大小为 10x6,然后使用 `ax.boxplot()` 函数来绘制箱线图。注意,这里我们传入了整个 `data` 列表,而不是单个数据集。这样 matplotlib 就会为我们绘制一个包含了 20 个箱线图的图形。
最后我们设置了 x 轴标签,然后使用 `plt.show()` 函数来显示图形。完整的代码如下:
```python
import pandas as pd
import matplotlib.pyplot as plt
# 读取数据
data = []
for i in range(1, 21):
filename = f"data{i}.csv"
df = pd.read_csv(filename, header=None)
data.append(df[0])
# 绘制箱线图
fig, ax = plt.subplots(figsize=(10, 6))
ax.boxplot(data)
ax.set_xticklabels([f"Data {i}" for i in range(1, 21)])
plt.show()
```
阅读全文