Изменить размер одной оси графика - PullRequest
1 голос
/ 19 июля 2011

Это довольно простые вопросы, мне не удалось найти какую-то старую тему по этому поводу.

Я делаю графики и меняю лимит данных, особенно xlim, (я достаю как70% графика с этим).Но когда я делаю это, мой график выглядит очень маленьким, и я ничего не могу из него извлечь.Как я могу изменить размер оси X, чтобы я мог видеть ее более четко.

1 Ответ

4 голосов
/ 20 июля 2011

По умолчанию matplotlib делает то, что вы хотите для линейных графиков и т. Д.

Где-то в вашем коде вы, вероятно, устанавливаете фиксированное соотношение сторон и задаете для регулируемой части границы оси значение "box" вместо "datalim".

Скорее всего, то, что вы звоните, делает это без вашего ведома. Например, если вы вызываете plt.imshow, он делает это по умолчанию (по сути, он вызывает plt.axis('image'), который устанавливает аспект в 1,0 и настраивается на «рамку»), чтобы изображения не растягивались до нечетных соотношений.

Есть несколько способов исправить это. Самое простое - просто позвонить plt.axis('tight') перед изменением размера оси x с помощью plt.xlim.

import matplotlib.pyplot as plt
import numpy as np

data = np.random.random((10,10))

plt.figure()
plt.imshow(data, interpolation='nearest')
plt.title('Original Plot')

plt.figure()
plt.imshow(data, interpolation='nearest')
plt.xlim([2, 4])
plt.title('Resized Plot')

plt.figure()
plt.imshow(data, interpolation='nearest')
plt.axis('tight')
plt.xlim([2, 4])
plt.title('Resized Plot with Tight Axis')

plt.show()

enter image description here enter image description here enter image description here

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...