Matthias
Matthias

Reputation: 4677

Define the limits of my axes, but with an equal scale in both directions

How do I combine those statements:

pyplot.axis([1234.0, 1773.0, 497.0, 1362.0])
pyplot.axis('equal')

I just want to define the limits of my axes, but with an equal scale in both directions.

P.S.: I tried pyplot.axis([1234.0, 1773.0, 497.0, 1362.0], 'equal'), but didn't worked.

Upvotes: 7

Views: 4229

Answers (2)

Matthias
Matthias

Reputation: 4677

The scale still seemed not right with using

pyplot.axis([1234.0, 1773.0, 497.0, 1362.0], aspect = 'equal')

I searched a bit further on StackOverflow and changed my code to:

pyplot.axis([xmin, xmax, ymin, ymax])
pyplot.gca().set_aspect('equal', adjustable='box')

The adjustable='box' was necessary for a question about a 3D plot, but seems also necessary for my 2D plot.

Sources:

2D plot question

3D plot question

Upvotes: 7

Cory Kramer
Cory Kramer

Reputation: 117866

If you want to define a parameter, but call the parameter list out of order and/or omit some parameters, you need to specify which parameter you are trying to set.

In this case, you want to set aspect so just assign 'equal' to that.

pyplot.axis([1234.0, 1773.0, 497.0, 1362.0], aspect = 'equal')

Upvotes: 4

Related Questions