python - real - Cómo dibujar un rectángulo sobre una región específica en un gráfico matplotlib
python graficos 2d (1)
La razón más probable es que haya utilizado unidades de datos para los argumentos x cuando llame a axhspan. De los documentos de la función (mi énfasis):
y los coords están en unidades de datos y x coords están en ejes (relativo 0-1) unidades .
Entonces, cualquier rectángulo que se extienda a la izquierda de 0 o de la derecha de 1 simplemente se dibuja fuera de la trama.
Una alternativa fácil podría ser agregar un Rectangle
a su eje (por ejemplo, a través de plt.gca
y add_patch
); Rectangle
usa unidades de datos para ambas dimensiones. Lo siguiente agregaría un rectángulo gris con ancho y alto de 1 centrado en (2,3):
from matplotlib.patches import Rectangle
someX, someY = 2, 3
currentAxis = plt.gca()
currentAxis.add_patch(Rectangle((someX - .5, someY - .5), 1, 1, facecolor="grey"))
Tengo un gráfico, calculado a partir de algunos datos, dibujado en matplotlib. Quiero dibujar una región rectangular alrededor del máximo global de este gráfico. plt.axhspan,
pero el rectángulo no parece aparecer cuando llamo a plt.show()
Entonces, ¿cómo se puede dibujar una región rectangular en un gráfico matplotlib? ¡Gracias!