tiempo real matrices graficos graficas graficar grafica coordenadas barras python matplotlib circle polar-coordinates

real - matplotlib python



Matplotlib-Dibujando un cĂ­rculo suave en una trama polar (1)

Puede establecer el argumento de transform del Circle :

%matplotlib inline import pylab as pl import numpy as np N = 100 theta = np.random.rand(N)*np.pi*2 r = np.cos(theta*2) + np.random.randn(N)*0.1 ax = pl.subplot(111, polar=True) ax.scatter(theta, r) circle = pl.Circle((0.5, 0.3), 0.2, transform=ax.transData._b, color="red", alpha=0.4) ax.add_artist(circle)

salida:

o transform=ax.transProjectionAffine + ax.transAxes si no te gusta usar el atributo privado.

Me gusta mucho la trama polar de matplotlib y me encantaría seguir trabajando con ella (ya que mis puntos de datos se dan en coordenadas polares de todos modos y mi entorno es circular).

Sin embargo, en la trama, me gustaría agregar círculos de radios dados en puntos específicos.

Por lo general, yo haría:

ax = plt.subplot(111) ax.scatter(data) circle = plt.Circle((0,0), 0.5) ax.add_artist(circle) plt.show()

Sin embargo, en coordenadas polares, no puedo usar el círculo, ya que asume coordenadas rectangulares.

Las ideas que he propuesto son: generar una matriz de puntos con coordenada radial constante y una coordenada angular en [0, 2PI] o cambiar completamente a coordenadas rectangulares. Ambas soluciones no son realmente satisfactorias. ¿Puede uno mejorar con matplotlib?

¡Gracias!