2017-08-04 74 views
1

我希望得到我的最後情節的顏色如何獲得最新的大熊貓df.plot()繪製線條的顏色

ax = df.plot() 
df2.plot(ax=ax) 
# how to get the color of this last plot, 
#the plot is a single timeseries, there is therefore a single color. 

我知道該怎麼做,在matplotlib.pyplot,對於那些有興趣看到例如here,但我無法找到一種方法來做到這一點在熊貓。在熊貓中有沒有像get_color()那樣的行爲?

+2

嘗試'ax.get_lines()[ - 1] .get_color()' – Goyo

+0

@Goyo爲什麼它是一個評論,而不是一個答案?如果你宣傳它,我會將其標記爲已接受的答案。 – SirC

+0

因爲我是從記憶中寫下來的,沒有機會去測試它。它爲你工作,所以我詳細闡述了它的答案。 – Goyo

回答

2

您不能對DataFrame.plot執行相同操作,因爲它不返回Line2D對象的列表,因爲pyplot.plot會執行此操作。但是,ax.get_lines()將返回行的列表中軸線繪製的,所以你可以看看最後繪製線的顏色:

ax.get_lines()[-1].get_color()

0

通知(不知道這是否是由Goyo回答隱),調用大熊貓對象.plot()精確返回ax你正在尋找,如:

plt1 = pd.Series(range(2)).plot() 
color = plt1.lines[-1].get_color() 
pd.Series(range(2, 4)).plot(color=color) 

enter image description here

這不是更漂亮,但可能一讓你避免明確導入matplotlib