我有生成四个子图的代码,但是我想通过循环生成那些图表,目前我正在跟踪这段代码来生成图表 代码:
plt.figure(figsize=(20, 12))
plt.subplot(221)
sns.barplot(x = 'Category', y = 'POG_Added', data = df)
xticks(rotation = 90)
plt.xticks(size = 11)
plt.yticks(size = 11)
plt.xlabel("Category",size = 13)
plt.ylabel("POG_Added",size = 13)
plt.subplot(222)
sns.barplot(x = 'Category', y = 'Live_POG', data = df)
xticks(rotation = 90)
plt.xticks(size = 11)
plt.yticks(size = 11)
plt.xlabel("Category",size = 13)
plt.ylabel("Live_POG",size = 13)
plt.subplot(223)
sns.lineplot(x = 'Category', y = 'D01_CVR', data = df)
#sns.barplot(x = 'Category', y = 'D2-08-Visits', data = df,label='D2-08_Visits')
xticks(rotation = 90)
plt.xticks(size = 11)
plt.yticks(size = 11)
plt.xlabel("Category",size = 13)
plt.ylabel("D01_CVR",size = 13)
plt.subplot(224)
plt.xticks(rotation='vertical')
ax = sns.barplot(x='Category',y='D2-08-Units',data=df)
ax2 = ax.twinx()
ax2.plot(ax.get_xticks(), df["D01_CVR"], alpha = .75, color = 'r')
plt.subplots_adjust(hspace=0.55,wspace=0.55)
plt.show()
考虑通过以下方式收紧重复代码:
ax
参数在轴数组上方循环。你知道吗虽然没有完全干燥,但考虑到特殊的两个地块,以下是调整:
我是这样做的:
这将产生:
其思想是
plt.subplots()
生成一个Axes
对象数组,这样您就可以在其上循环,并在循环中生成绘图。在这个例子中,我需要ndarray.ravel()
,因为axs
是一个2D数组。你知道吗相关问题 更多 >
编程相关推荐