hvplot.box中的不同颜色

时间:2019-11-27 18:26:43

标签: python pandas holoviews hvplot

以下代码生成链接的图像。它主要生成我想要的内容,但我希望Real和Preds之间的框颜色有所不同。我该如何使用Holoviews或Hvplot?

import hvplot.pandas
import pandas as pd
import numpy as np



df = pd.DataFrame(np.random.randn(20), columns=['Value'])
df['Source'] = ['Preds'] *10 +['Real'] * 10
df['Item'] = ['item1'] *5 + ['item2']*5 + ['item1'] *5 + ['item2']*5
df.hvplot.box(y='Value', by=['Item', 'Source'])

我希望这张图片的第一张图具有第二张图的风格

enter image description here

1 个答案:

答案 0 :(得分:1)

您可以通过设置颜色和cmap参数来实现:

df.hvplot.box(
    y='Value',
    by=['Item', 'Source'],
    color='Source',
    cmap=['blue', 'orange'],
    legend=False,
)

或通过设置 .opts(box_color)

df.hvplot.box(
    y='Value',
    by=['Item', 'Source'],
    legend=False,
).opts(
    box_color='Source',
    cmap='Category20',
)

另请参阅:Holoviews color per category