我有9个箱形图,分为3组:
使用seaborn
如何将所有A都绘制成红色,将所有B都绘制成绿色,并将所有C绘制成蓝色?
我使用bplot = sns.boxplot(data=[d for d in data], width=0.5)
创建了箱形图,并且意识到bplot.artists
的存在。有人可以对此提供提示吗?
答案 0 :(得分:0)
伪代码:
for a in row:
for b in column:
if box in left:
graph with color 'red'
elif box in middle:
graph with color 'green'
elif box in right:
graph with color 'blue'
else:
'no color'
基本上,我是使用嵌套循环for
进行循环,并且在其内部是if/else
算法(或您所谓的任何算法)。如果它在顶部栏中,则将其涂成红色。如果在底部栏中,将其涂成蓝色。如果它在中间列中,请将其涂成绿色。否则,将其涂成无颜色。这应该使您对所需内容有一个大概的估计。通过添加其他颜色,可以轻松扩展它。它可以扩展到N行M列。
答案 1 :(得分:-1)
color是一个可选参数,会传递到基础的matplotlib对象中,因此只需在初始化参数sns.boxplot(data, color='blue')
中指定它,并使用for循环来命中A,B和C