plt.boxplot绘制多个颜色
时间: 2023-07-20 18:03:24 浏览: 221
要在单个 `plt.boxplot()` 中绘制多个颜色的箱线图,可以使用 `patch_artist=True` 参数并为每个箱子设置不同的填充颜色。以下是一个示例代码:
```python
import matplotlib.pyplot as plt
import numpy as np
# 生成一些随机数据
data = [np.random.normal(0, std, 100) for std in range(1, 4)]
# 设置不同颜色的填充
colors = ['pink', 'lightblue', 'lightgreen']
# 绘制箱线图
bp = plt.boxplot(data, patch_artist=True)
# 设置每个箱子的填充颜色
for patch, color in zip(bp['boxes'], colors):
patch.set_facecolor(color)
# 显示图形
plt.show()
```
这将绘制三个箱子,每个箱子的填充颜色分别为粉色、浅蓝色和浅绿色。你可以根据自己的需要修改 `data` 和 `colors` 变量来绘制不同的箱线图。
相关问题
matplotlib绘制函数plt.boxplot表示
`plt.boxplot()`函数用于绘制箱线图,它可以显示一组数据的分布情况,包括中位数、四分位数、异常值等信息。
函数语法:`plt.boxplot(x, notch=None, sym=None, vert=None, whis=None, positions=None, widths=None, patch_artist=None, **kwargs)`
参数说明:
- x:表示要绘制箱线图的数据,可以是一个列表或数组,也可以是多个列表或数组。
- notch:是否绘制缺口(中位数左右的竖线),默认为None。
- sym:表示异常值的形状,可以是一个字符或数字,默认为None,表示用圆圈标记异常值。
- vert:表示箱线图的方向,如果为True(默认值),则竖直绘制;如果为False,则水平绘制。
- whis:表示上下边界线的长度,用于确定离群值的判断标准,默认为1.5倍的四分位距(即Q3-Q1)。
- positions:表示箱线图的位置,可以是一个数字或列表,用于指定每个箱线图的水平位置。
- widths:表示箱线图的宽度,可以是一个数字或列表,用于指定每个箱线图的宽度。
- patch_artist:是否使用补丁元素填充箱体(即填充箱线图的颜色),默认为False。
除了以上参数外,`plt.boxplot()`函数还支持Matplotlib的其他参数,如线条样式、颜色、标签等。
plt.boxplot多个箱体的中位线有不同的颜色
可以通过设置`medianprops`参数来改变中位线的样式,包括颜色、线型、宽度等。具体操作如下:
```python
import matplotlib.pyplot as plt
import numpy as np
# 生成三组随机数据
data = [np.random.normal(0, std, 100) for std in range(1, 4)]
# 设置中位线颜色为红色
median_props = dict(linestyle='-', linewidth=2.5, color='red')
# 绘制箱线图
fig, ax = plt.subplots()
ax.boxplot(data, medianprops=median_props)
plt.show()
```
这里`median_props`参数设定了中位线样式,其中`linestyle`为线型,`linewidth`为线宽,`color`为颜色。你可以根据需要修改这些参数,达到自己想要的效果。
阅读全文