Given the following minimal example, how can I make the subplots' titles align vertically (without moving the subplots themselves)? I need the aspect ratio to be set to 'equal' so plots are not stretched. I chose data to be of different scales on purpose.
import numpy as np
import matplotlib.pyplot as plt
data1 = np.random.multivariate_normal(mean=[0,0],cov=np.diag([5,2]),size=50)
data2 = np.random.multivariate_normal(mean=[5,3],cov=np.diag([10,20]),size=50)
data3 = np.random.multivariate_normal(mean=[-8,7],cov=np.diag([1,7]),size=50)
fig, (ax1,ax2,ax3) = plt.subplots(1,3,figsize=(5,2))
ax1.scatter(data1[:,0],data1[:,1])
ax2.scatter(data2[:,0],data2[:,1])
ax3.scatter(data3[:,0],data3[:,1])
ax1.set_aspect('equal')
ax2.set_aspect('equal')
ax3.set_aspect('equal')
ax1.set_title('Title 1')
ax2.set_title('Title 2')
ax3.set_title('Title 3')
plt.show()
Edit: The question has been closed and I'm not sure why. What I'm asking for is to align the titles of multiple subplots without moving the plot themselves. I don't think any of the suggested questions are related to my request.