diagtwig de dispersión matplotlib con texto diferente en cada punto de datos

Estoy tratando de hacer un diagtwig de dispersión y anotar puntos de datos con diferentes números de una lista. entonces, por ejemplo, quiero trazar y vs x y anotar con los números correspondientes de n.

y = [2.56422, 3.77284, 3.52623, 3.51468, 3.02199] z = [0.15, 0.3, 0.45, 0.6, 0.75] n = [58, 651, 393, 203, 123] ax = fig.add_subplot(111) ax1.scatter(z, y, fmt='o') 

¿Algunas ideas?

No conozco ningún método de trazado que tome matrices o listas, pero podría usar annotate() al iterar sobre los valores en n .

 y = [2.56422, 3.77284, 3.52623, 3.51468, 3.02199] z = [0.15, 0.3, 0.45, 0.6, 0.75] n = [58, 651, 393, 203, 123] fig, ax = plt.subplots() ax.scatter(z, y) for i, txt in enumerate(n): ax.annotate(txt, (z[i], y[i])) 

Hay muchas opciones de formato para annotate() , consulte el sitio web matplotlib:

enter image description here

En la versión anterior a matplotlib 2.0, ax.scatter no es necesario para trazar texto sin marcadores. En la versión 2.0 necesitarás ax.scatter para establecer el rango adecuado y los marcadores para el texto.

 y = [2.56422, 3.77284, 3.52623, 3.51468, 3.02199] z = [0.15, 0.3, 0.45, 0.6, 0.75] n = [58, 651, 393, 203, 123] fig, ax = plt.subplots() for i, txt in enumerate(n): ax.annotate(txt, (z[i], y[i])) 

Y en este enlace puedes encontrar un ejemplo en 3d.

    Intereting Posts