Python 熊猫:在一个方框图中为传单设置不同的颜色

Python 熊猫:在一个方框图中为传单设置不同的颜色,python,pandas,boxplot,Python,Pandas,Boxplot,我想根据类别为箱线图中的异常值设置不同的颜色 f = plt.figure() ax = f.add_subplot(111) df = pd.DataFrame({"X":[-100,-10,0,0,0,10,100], "Category":["A","A","A","A","B","B","B",]}) bp = df.boxplot("X", return_type="dict", ax=ax, grid=False) ax.set_ylim(-11

我想根据类别为箱线图中的异常值设置不同的颜色

f = plt.figure()
ax = f.add_subplot(111)
df = pd.DataFrame({"X":[-100,-10,0,0,0,10,100],
                   "Category":["A","A","A","A","B","B","B",]})
bp = df.boxplot("X", return_type="dict", ax=ax, grid=False)
ax.set_ylim(-110,110)
plt.text(1,90,"this flier red",ha='center',va='center')
plt.text(1,-90,"this flier blue",ha='center',va='center')

我如何给传单(帽子上方和下方的十字架)不同的颜色

我知道,我可以设置不同的颜色的胡须

bp["whiskers"][0].set_color("b")
bp["whiskers"][1].set_color("r")
bp[“胡须”]
返回一个包含两个线条对象的列表(一个用于顶部胡须,一个用于底部胡须)是有意义的。要不是
bp[“fliers”]
我只得到一个列表元素(
bp[“fliers”])。设置颜色(“r”)
甚至什么都不做

谢谢你的帮助


Max

好的,这是一个解决方案。
bp[“fliers”]。get_data()
返回一个包含x-y值的元组。然后只需通过

ax.plot([1],[bp["fliers"][0].get_data()[1][0]], 'b+')
ax.plot([1],[bp["fliers"][0].get_data()[1][1]], 'r+')