Maintaining the aspect ratio while plotting is quiet easy. I was trying to save the subplot while maintaining the aspect ratio but things didn't turn out the way I expected. This is the original plot along with the code how it is generated:
f,ax = plt.subplots()
ax.plot(x_new, y_new, 'black')
ax.set_xlim(0, img.shape[1])
ax.set_ylim(0, img.shape[0])
x0,x1 = ax.get_xlim()
y0,y1 = ax.get_ylim()
ax.set_aspect(abs(x1-x0)/abs(y1-y0))
plt.gca().invert_yaxis()
I saved the subplot as:
extent = ax.get_window_extent().transformed(f.dpi_scale_trans.inverted())
f.savefig('ax_figure.png', bbox_inches=extent)
But when I read the saved figure and do plt.imshow(img), I get this:
What should I do to get the saved image as in the subplot?

