I want to use ax.axis('equal')X and Y to force alignment, but I also want to specify specific ranges for the X and Y axes. If the fields are also fixed, the problem is limited, and the result is shown on the left side of Figure 1 . If instead the fields were allowed to automatically expand themselves to occupy the slack, then xlimthey ylimcan remain when I install them, while maintaining them axis('equal'). An example of what I need is shown on the right side of Figure 1 . How can I let field fields float?
f,ax=plt.subplots(1)
ax.axis('equal')
ax.plot([0,20],[0,20])
ax.set_xlim([2,18])
ax.set_ylim([5,15])
xlim2=array(ax.get_xlim())
ylim2=array(ax.get_ylim())
sqx=array([0,1,1,0,0])
sqy=array([0,0,1,1,0])
ax.plot(xlim2[sqx],ylim2[sqy],lw=3)
Figure 1: output from the above code snippet.