Как получить положение левого нижнего угла в осях matplotlib? - PullRequest
0 голосов
/ 12 апреля 2020

Я хотел бы иметь нижний левый угол моей области черчения, чтобы добавить туда красную точку (после того, как она сохранена в «.png» и загружена где-то еще). Вот график:

import numpy as np
import matplotlib.pyplot as plt
import matplotlib
plt.rcParams['figure.dpi'] = 300   
x= np.arange(0,10,1)

fig, ax = plt.subplots(1, figsize=(1,1))
plt.plot(x,x)

enter image description here

Теперь я сохраняю график и перезагружаю его, далее я хочу увидеть некоторые свойства позиций:

fig.savefig( "bla.png",bbox_inches='tight' )
image1=plt.imread("bla.png")
print("(y, x, color) = " , image1.shape)
print("Position =" , ax.get_position())

Вывод:

(y, x, color) =  (357, 348, 4)
Position = Bbox(x0=0.125, y0=0.125, x1=0.9, y1=0.88)

хорошо, теперь я пытаюсь добавить красную точку в том месте, откуда начинается моя область построения:

red = [255,0,0,1]
blue= [0, 0 ,255,1]
image2= image1.copy()

(y,x) = (0,0)
image2[y:y+3,x:x+3] = blue

(y,x) = (357,348)
image2[y-3:y,x-3:x] = blue

yp = int(0.125*357)
xp = int(0.125*348)

(y,x) = (yp,xp)
image2[y-3:y+3,x-3:x+3] = red

plt.axis('off')
plt.imshow(image2)

Это не то, что ожидалось.

enter image description here

У вас есть идеи, как я могу получить этот левый нижний угол?

...