Python 带日期的子地块:共享同一X轴时缺少图形的部分

Python 带日期的子地块:共享同一X轴时缺少图形的部分,python,matplotlib,bar-chart,visualization,boxplot,Python,Matplotlib,Bar Chart,Visualization,Boxplot,我想创建twp子图,顶部为箱线图,底部为条形图。 箱线图涵盖了过去10年12个月的数据,而条形图仅涵盖了今年的5个月,因为没有进一步的可用数据 我的代码: #Visualise the data import seaborn as sns import matplotlib.pyplot as plt sns.set(style="whitegrid") f, axes = plt.subplots(2, 1, sharey=True, sharex=True) ax.plot= sns.

我想创建twp子图,顶部为箱线图,底部为条形图。 箱线图涵盖了过去10年12个月的数据,而条形图仅涵盖了今年的5个月,因为没有进一步的可用数据

我的代码:

#Visualise the data
import seaborn as sns
import matplotlib.pyplot as plt

sns.set(style="whitegrid")

f, axes = plt.subplots(2, 1, sharey=True, sharex=True)

ax.plot= sns.boxplot(x="Month", y='application_number', data=results_df_groupby_truncated_monthly_dataframe, fliersize=5, ax=axes[0])

ax.plot= sns.barplot(x="Month", y='application_number', data=results_df_groupby_truncated_pandemic_monthly_dataframe, ax=axes[1])
输出-A

我使用了
sharex=True
,因为共享相同的x轴有助于比较两个图形。然而,箱线图并没有显示所有的12个月,只有5个月。条形图的颜色与方框图不匹配

输出-B

我使用了
sharex=False
。箱线图显示了所有12个月的情况,但要对这两张图进行比较并不容易。条形图的颜色与方框图不匹配

所需输出


你知道如何1)用相同的x轴对齐两张图表,2)匹配两张图表的颜色,3)显示12个月吗?非常感谢

通过使用
sns.boxplot
sns.barplot
order
参数,您可以实现这三个目标。这样做的效果是对齐调色板的颜色并调整x轴以显示传递到
顺序的所有级别

#df1包含12个月的模拟数据,df2包含5个月的模拟数据
f、 ax=plt.子批次(2,1,sharex=True)
sns.boxplot(x=“month”,y=“data”,order=range(1,12),ax=ax[0],data=df1)
sns.barplot(x=“month”,y=“data”,order=range(1,12),ax=ax[1],data=df2)

轴[0]。是否设置(0,12)?