Сюжет в не-сетчатом созвездии в Python / Matplotlib?

Интересно, есть ли возможность отображать несколько графиков или изображений в созвездии без сетки? Например, есть ли способ отобразить набор изображений на одной фигуре в круглом созвездии по периметру, используя Matplotlib или любой другой пакет python?

1 ответ

Оси могут быть созданы и позиционированы через fig.add_axes([x,y,width,height]) смотри документацию. Также смотрите Каковы различия между add_axes и add_subplot?

В этом случае мы можем добавить оси в позиции, лежащие на окружности, создавая какую-то ручную радиальную сетку осей.

import numpy as np
import matplotlib.pyplot as plt

N = 8
t = np.linspace(0,2*np.pi, N, endpoint=False)
r = 0.37
h = 0.9 - 2*r
w = h
X,Y = r*np.cos(t)-w/2.+ 0.5, r*np.sin(t)-h/2.+ 0.5

fig = plt.figure()
axes = []
for x,y in zip(X,Y):
    axes.append(fig.add_axes([x, y, w, h]))

plt.show()

Другие вопросы по тегам