violin
matplotlib でプロットの色を変更する方法はありますか?
デフォルトの色はこの「茶色がかった」色で、これはそれほど悪くはありませんが、たとえば、最初の 3 つのバイオリンを強調するために別の色にしたいと思います。ドキュメントにパラメータが見つかりません。バイオリンの色を変えるアイデアやハックはありますか?
violin
matplotlib でプロットの色を変更する方法はありますか?
デフォルトの色はこの「茶色がかった」色で、これはそれほど悪くはありませんが、たとえば、最初の 3 つのバイオリンを強調するために別の色にしたいと思います。ドキュメントにパラメータが見つかりません。バイオリンの色を変えるアイデアやハックはありますか?
matplotlib.pyplot.violinplot()
それが返すと言います:
作成された対応するコレクション インスタンスのリストに、バイオリン プロットの各コンポーネントをマッピングする辞書。ディクショナリには次のキーがあります。
bodies
matplotlib.collections.PolyCollection
:各ヴァイオリンの塗りつぶされた領域を含むインスタンスのリスト。- [...とりわけ...]
のメソッドには次PolyCollection
のものがあります。
set_color(c)
facecolor と edgecolor の両方を設定します。set_facecolor(c)
とset_edgecolor(c)
そのすべてが「matplotlib color arg または rgba タプルのシーケンス」を取りますしたがって、結果の body リストをループして、それぞれの facecolor を変更できるように見えます。
violin_parts = plt.violinplot(...)
for pc in violin_parts['bodies']:
pc.set_facecolor('red')
pc.set_edgecolor('black')
一般的なプロットタイプのように作成するときにこれを設定できないのは少し奇妙ですが. おそらく、操作が非常に多くのビットを作成するためだと思います(前述のPolyCollection
5 つの other とともにLineCollections
)。追加の引数があいまいになるでしょう。