I successfully draw a subplot of the histogram figure contains three subplots as shown in the figure below.

The question is that I need to draw dashed rectangular covers the three subplots at a specific area of the figure to show the importance of that covered part as shown in the below figure.
I tried to use some online codes using "add-patch", however, the rectangular appears on one subplot and compress the bars of that subplot.
ax0.add_patch(patches.Rectangle((147,100),100,300,linewidth=1,edgecolor='r',facecolor='none'))
This is the code:
bins =[50, 100,150, 200,250,300,350]
y= [55,75,85,90,120,110,115,140,145,160,170,181,185,175,190,210,220,250,280,290,320]
fig, (ax0, ax1, ax2) = plt.subplots(nrows=3)
colors = ['r','k','b']
ax0.hist(y, bins, histtype='bar', stacked=True, rwidth=0.8, color = colors[0])
ax1.hist(y, bins, histtype='bar', stacked=True, rwidth=0.8, color = colors[1])
ax2.hist(y, bins, histtype='bar', stacked=True, rwidth=0.8, color = colors[2])
fig.subplots_adjust(hspace=0.6)
ax0.add_patch(patches.Rectangle((147, 100), 100, 300, linewidth=1, edgecolor='r', facecolor='none'))
plt.show()



