python 读取excel数据画箱形图且每个箱的颜色不一样
时间: 2023-10-01 08:02:07 浏览: 92
以下是一个示例代码,用于读取Excel数据并画出箱形图,每个箱的颜色不同:
```python
import pandas as pd
import matplotlib.pyplot as plt
import random
# 读取Excel文件
df = pd.read_excel('data.xlsx')
# 生成不同颜色的列表
color_list = []
for i in range(len(df.columns)):
color = "#{:06x}".format(random.randint(0, 0xFFFFFF))
color_list.append(color)
# 画箱形图
fig, ax = plt.subplots()
ax.boxplot(df.values, patch_artist=True, boxprops=dict(facecolor='gray', color='black'),
capprops=dict(color='black'), whiskerprops=dict(color='black'),
flierprops=dict(markeredgecolor='black', markerfacecolor='black'),
medianprops=dict(color='black'))
for patch, color in zip(ax.artists, color_list):
patch.set_facecolor(color)
plt.xticks(range(1, len(df.columns)+1), df.columns)
plt.show()
```
在此示例中,我们使用pandas库读取名为"data.xlsx"的Excel文件,并使用matplotlib库绘制了箱形图。我们使用随机生成的颜色列表为每个箱子分配不同的颜色。最后,我们将图例标签设置为列名,并显示图表。
请注意,我们使用了“patch_artist=True”参数来启用填充箱子的功能,并使用其他参数来自定义绘图属性,例如颜色和线宽。
阅读全文