Как иметь несколько осей с pcolor-графиком? - PullRequest
0 голосов
/ 19 апреля 2019

Мне нужна помощь с двумя разными осями на графике pcolor.Обе оси x и y должны быть удвоены, мне нужно иметь две разные шкалы (для уникального набора данных это просто две разные единицы).Мне также нужно иметь аспект, равный 'равному' и 'даталим'.Проблема в том, что как только я создаю вторую ось, аспект «datalim» игнорируется python, и вместо этого график pcolor будет привязываться либо к оси x, либо к оси y (в зависимости от того, какой из Twinx () или twiny () я использовалво-первых), и я не могу больше ничего менять с аспектом сюжета.Чтобы быть ясным, я могу создать новую ось для второго блока, проблема в соотношении сторон, которым я больше не могу управлять

Вот что я пробовал

figsize=(10,7)

a = 45
a_num = 10

a = ang * np.pi /180
th = np.linspace(0, a, a_num)
x = r[:,None] * np.cos(th)[None,:]
y = r[:,None] * np.sin(th)[None,:]
fig, ax = plt.subplots(1,1,figsize=figsize)

ax.set_aspect('equal','datalim')

ax.pcolor(2*x,2*y,u.transpose())

#Up until there all is fine

ax1 = ax.twiny()
ax2 = ax1.twinx()

Вот то, что я получаю без создания ax1 и ax2, оно хорошо подходит для обеих осей: https://puu.sh/DgDJf/58160a5f94.png https://puu.sh/DgDJe/341f4cf68e.png

А когда я на самом деле создаю ax1 и ax2, оно хорошо подходит только для оси y: https://puu.sh/DgDJh/b874adeb8f.png https://puu.sh/DgDJd/aae6ae104c.png

Я ожидал бы того же поведения даже при создании второй оси (точно так же, как первые два изображения).

Извините, но я не могу опубликоватьИзображение еще: / так что ссылку на изображение придется делать.Надеюсь, мне было ясно, и решение существует.Заранее спасибо!

...