答案 0 :(得分:12)
从documentation有一个宽度选项:
widths:array-like,default = 0.5
标量或矢量,并设置每个框的宽度。默认值为0.5或0.15 *(极限位置之间的距离),如果它更小。
以下是一个例子:
import numpy as np
import matplotlib.pyplot as plt
np.random.seed(937)
data = np.random.lognormal(size=(37, 4), mean=1.5, sigma=1.75)
labels = list('ABCD')
fs = 10 # fontsize
plt.boxplot(data, labels=labels, showfliers=False, widths=(1, 0.5, 1.2, 0.1))
plt.show()
答案 1 :(得分:1)
尝试通过axes
工作,看看它是否有效:
fig = plt.figure()
ax = fig.add_subplot(111)
ax.boxplot(boxes, widths = 0.6, patch_artist = True)