我尝试使用并行循环创建一些内核图。当我使用条形图时,这个循环可以工作,但是当我使用内核绘图时,这个循环就会出错。我是python新手,所以我认为我遗漏了一些非常明显的东西-有什么建议吗?谢谢!在
哦和len(schools) = 3
#the kernel plot
fig = plt.figure(facecolor='white')
gs1 = GridSpec(1,len(schools))
sp1 = [plt.subplot(gs1[0,i]) for i in range(len(schools))]
colors = ["red", "blue", "green"]
schools2 = [[data1....],[data2....],[data3......]]
for ax, i in zip(sp1, range(len(schools))):
ax = sns.kdeplot(schools2[i], bw=.5, color = colors[i], lw=1.8, vertical=True, alpha=.5)
一。在
^{pr2}$
对于直接使用matplotlib绘图函数,执行}是有区别的。在前一种情况下,绘图将在“当前活动”轴上绘制,而在后一种情况下,绘图将始终转到绑定到
plt.bar(...)
和{ax
变量的轴上。在类似地,对于seaborn绘图功能,如果您只是编写,例如
sns.kdeplot(...)
,它将绘制到“当前活动”轴上。为了使用matplotlib面向对象的接口来控制绘图的结束位置,大多数[1]seaborn函数都使用一个ax
参数,并将axis对象sns.kdeplot(..., ax=ax)
传递给该参数。在kdeplot
,violinplot
,以及其他许多绘制到特定轴上的函数,以及更复杂的函数,如lmplot
,factorplot
等等,它们是完整的图形函数,不能分配给特定的轴或图形。前面的任何函数都将接受ax
参数。在相关问题 更多 >
编程相关推荐