2016-11-30 4 views
1

カテゴリに基づいてボックスプロットの外れ値に異なる色を設定したいとします。パンダ:1つのボックスプロット内のチラシに異なる色を設定する

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') 

Different flier colors in boxplot

は、どのように私はチラシ(上記とキャップの下に横切る)さまざまな色を与えることができますか?

私は

bp["whiskers"][0].set_color("b") 
bp["whiskers"][1].set_color("r") 

によりウィスカーのために異なる色を設定することができ、それはbp["whiskers"]は2つのラインオブジェクト(トップウィスカー用と下のいずれかの1)のリストを返すという理にかなっていることを知っています。しかし bp["fliers"]のために私は唯一bp["fliers"].set_color("r")も、何もしません。助けを

感謝を(1リスト要素を取得します。

マックス

答えて

2

さて、これは一つの解決策である。bp["fliers"].get_data()でタプルを返します。 XY値。そしてあるだけ

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

enter image description here

を経由してプロットすることがあります
関連する問題