[英]Slicing plot using different colors - manually recolor the bars
我想使用選擇的顏色對DF
進行切片。 我知道如何對DF
切片,但我不知道如何將所有部分放在一起。 現在, MWE給出如下圖:
import pandas as pd
import numpy as np
index=pd.date_range('2011-1-1 00:00:00', '2011-1-31 23:50:00', freq='1h')
df=pd.DataFrame(np.random.randn(len(index),2).cumsum(axis=0),columns=['A','B'],index=index)
df2 = df.groupby([lambda x: x.month, lambda x: x.day]).sum()
df2[:11].plot(kind='bar', color='r')
df2[12:].plot(kind='bar', color='y')
我想要一個具有全部31個值的繪圖(例如,不是兩個),其中對於范圍[:11]
,繪圖顏色將是紅色,對於[12:]
黃色。
您需要將每個連接起來,以便它們是獨立的系列。 您還需要重命名它們,以便它們不完全相同(我已經加了一個空格)。
df3 = pd.concat([df2[:11], df2[12:]], axis=1)
df3.columns = ['A', 'B', 'A ', 'B ']
df3.plot(kind='bar', colors=['r', 'r', 'y', 'y'])
或者,為系列中的每個值指定顏色。
colors = tuple(['r'] * 11 + ['y'] * (len(df2) - 11))
df2.plot(kind='bar', color=[colors], legend=False)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.