He creado un gráfico de imagen con ax = imshow()
. ax
es un objeto AxesImage, pero parece que no puedo encontrar la función o atributo que necesito para poder personalizar las etiquetas de tic. El ordinary pyplots parece tener los métodos set_ticks
y set_ticklabels
, pero estos no parecen estar disponibles para la clase AxesImage. ¿Algunas ideas? Gracias ~personalizar los tics para AxesImage?
Respuesta
Por lo que vale la pena, estás malentendido poco lo que imshow()
devoluciones, y cómo ejes matplotlib están estructurados en general ...
AxesImage Un objeto es responsable de la imagen visualizada (por ejemplo, mapas de color, datos, etc.), pero no el eje en el que reside la imagen. No tiene control sobre elementos como marcas y etiquetas.
Lo que desea utilizar es la instancia del eje actual.
Puede acceder a esto con gca()
, si está utilizando la interfaz pylab
, o matplotlib.pyplot.gca
si está accediendo a cosas a través de pyplot. Sin embargo, si está utilizando cualquiera de ellos, existe una función xticks()
para obtener/configurar las etiquetas y ubicaciones xtick.
Por ejemplo (usando pylab):
import pylab
pylab.figure()
pylab.plot(range(10))
pylab.xticks([2,3,4], ['a','b','c'])
pylab.show()
El uso de un enfoque más orientado a objetos (en una nota al azar, captadores y definidores de matplotlib ser molesto rápidamente ...):
import matplotlib.pyplot as plt
import numpy as np
fig = plt.figure()
ax = fig.add_subplot(1,1,1) # Or we could call plt.gca() later...
im = ax.imshow(np.random.random((10,10)))
ax.set_xticklabels(['a','b','c','d']) # Or we could use plt.xticks(...)
Espero que aclare un poco las cosas!
- 1. ¿Cómo agregar Lables a los tics de SWT Scale?
- 2. ¿Cómo deshabilitar los tics menores de log-plot en Matplotlib?
- 3. ¿qué es un sistema operativo sin tics?
- 4. Personalizar los colores de un UISegmentedControl
- 5. Personalizar los accesores generados por datos centrales
- 6. Personalizar los campos de salida elmah.axd
- 7. Obtener tics precisos de un temporizador en C#
- 8. Personalizar el botón Atrás para UIImagePickerController?
- 9. Personalizar UISearchDisplayController
- 10. ¿Cómo puedo detectar los tics de un GIF animado por segundo?
- 11. Personalizar aplicación de iPhone para diferentes clientes
- 12. Personalizar xtable
- 13. Personalizar la sección del encabezado para UITableViewController
- 14. Personalizar javax.swing.JFileChooser para incluir un JTextField adicional
- 15. Barra de desplazamiento para personalizar ViewGroup
- 16. Personalizar android.widget.SearchView
- 17. Personalizar UIMenuController
- 18. Multiplot Gnuplot cómo mantener la trama de igual tamaño después de eliminar los tics y las etiquetas de los ejes?
- 19. Personalizar Android ListView Colors?
- 20. Personalizar animación en Raphael.js
- 21. Personalizar animación UINavigationController: CATransición
- 22. log4net: cómo personalizar los datos que se almacenarán
- 23. Cómo personalizar los errores de validación de formulario en codeIgniter
- 24. Personalizar los colores de la barra de pestañas de vim
- 25. Liferay - personalizar cambiar contraseña
- 26. HighCharts: ¿Es posible personalizar los colores de las series individuales?
- 27. Symfony2 personalizar los mensajes de error de formulario
- 28. cómo personalizar los carriles 3 ITS nombre de la columna
- 29. Personalizar procesador predeterminado radioselect
- 30. Personalizar C++ afirmar macro
¡Sí! Gracias. Esperaba que fuera algo similar a Matlab donde imagen() devuelve el mango de los ejes. El nombre del objeto es un poco engañoso también ... ¡Lo noté sobre el getter/setter también! En matlab a menudo paso los argumentos a los establecedores de ejes usando la notación 'cellarray {:}' que sería como la sintaxis '* args' y' ** kwargs' de python, pero en este caso no es tan sencillo (aunque yo estoy seguro de que hay formas de evitarlo). – hatmatrix