Управление масштабом при вставке субплота в график в matplotlib - PullRequest
1 голос
/ 08 апреля 2019

Редактировать: изменяет обе оси на plt.axes.

Я хотел бы встроить небольшую фигуру в сюжет, следуя методологии https://matplotlib.org/examples/pylab_examples/axes_demo.html

Это прекрасно работает, однако я ищу способ определения масштаба таким образом, чтобы он был одинаковым для всех графиков.

Я бы ожидал, что масштаб будет таким же, если я установлю размер внутреннего графика на 1, но, как видно из примера, этого не происходит.

Мне нужно это, чтобы добавить несколько несвязанных диаграмм Санки на одном графике. Вот мой код:

import matplotlib.pyplot as plt
import numpy as np
from matplotlib.sankey import Sankey

fig = plt.figure(figsize = (12, 5), frameon=True)
ax = plt.axes([0, 0, 1, 1], frameon=False)

sankey = Sankey(ax=ax, unit=None)
sankey.add(flows=[0.2, -0.2], orientations=[-1, 0])
diagrams = sankey.finish()

a = plt.axes([0, 0, 1, 1], frameon=False)#, xticks=(np.arange(-2, 2, step=0.1)), yticks=(np.arange(-2, 3, step=0.1)))
sankey = Sankey(ax=a, unit=None)
sankey.add(flows=[0.2, -0.2], orientations=[1, 0])
diagrams = sankey.finish()

plt.show()

Как видите, размер стрелок различен, хотя входные значения одинаковы.

...