0

グラフの下の色付きの領域の凡例ボックスにラベルを表示できるようにしたいと思います。色付きの領域は13<x<17から22<x<29の間です

使ってます:

for i in data.findOne()
    a = [element['total'] for element in i['counts']]
    P.plot(a, label="curve 1", color='green')
    where = np.zeros(len(a),dtype=bool)
    where[13:17] = True
    where[22:29] = True
    P.fill_between(np.arange(len(a)),a,where=where,color='green', alpha='0.5')

P.legend()
P.show()

凡例を表示するコマンドをどこに挿入できますか?影付きの領域の凡例を、曲線の凡例ボックスと同じ凡例ボックスに入れたいと思います。

ありがとうございました!

これはどのように見えるかです:

例

4

1 に答える 1

2

によって返されるPolyCollectionはfill_between、現在のラベルメカニズムではサポートされていません。できることは、プロキシアーティストとして任意のパッチを作成し、これをプレースホルダーとして追加することです。例:

from matplotlib.patches import Rectangle
import numpy as np
import pylab as P

xs = np.arange(0,10,0.1)
line1 = P.plot(xs,np.sin(xs),"r-", label="lower limit")[0]
line2 = P.plot(xs,np.sin(xs-1)+3,"b-", label="upper limit")[0]
P.fill_between(xs,np.sin(xs), np.sin(xs-1)+3,color='green', alpha=0.5, label="test")
rect = Rectangle((0, 0), 1, 1, fc="g", alpha=0.5)
P.legend([line1, line2, rect], ["lower limit", "upper limit", "green area"])
P.show()

私たちに与える: サンプル

参考までに、こちらをご覧ください

于 2013-01-10T12:16:42.960 に答える