Разница в координатах между `imshow` и` quiver` - PullRequest
0 голосов
/ 09 марта 2019

Я пытаюсь выяснить разницу в соглашениях между imshow и quiver.Когда я запускаю следующий код

import matplotlib.pyplot as plt
import numpy as np

img = np.random.randn(20, 40)
xs, ys = [15], [30]
us, vs = [4], [9]
plt.imshow(img, origin='lower')
plt.quiver(xs, ys, us, vs, scale_units='xy', angles='xy', scale=1)
plt.show()

, я ожидаю, что будет нарисована стрелка, которая находится в диапазоне img (начиная с 15 + 4 < 20 и 30 + 9 < 40).Тем не менее, я получаю изображение, подобное этому: arrow outside the plot region

и для получения ожидаемого результата мне нужно транспонировать изображение img или переключить xs с помощью ys и us с vsplt.imshow(img.T) я получаю ожидаемый результат arrow within the plot region.Вероятно, есть некоторые соглашения, которые мне не хватает, и я хотел бы выяснить, какие.Это раздражает при наложении векторных полей на изображения RGB, поскольку при транспонировании легко потерять отслеживание систем координат.

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