Rotación de etiquetas de marca de barra de color en Matplotlib

La barra de colores es un eje que indica la asignación de valores de datos a los colores utilizados en el gráfico. La función colorbar() en el módulo pyplot de matplotlib agrega una barra de colores a un gráfico que indica la escala de colores.

Barra de colores típica

A veces es conveniente rotar las etiquetas para una mejor visualización y comprensión. Para cambiar la rotación de las etiquetas de la barra de colores, el ángulo de rotación deseado se proporciona en:

  • cbar.ax.set_xticklabels , si la orientación de la barra de colores es horizontal
  • cbar.ax.set_yticklabels , si la orientación de la barra de colores es vertical

El valor positivo del ángulo corresponde a la rotación en sentido contrario a las agujas del reloj, mientras que el valor negativo corresponde a la rotación en el sentido de las agujas del reloj. Además, podemos usar valores «verticales» y «horizontales» para la rotación en lugar del valor numérico del ángulo. Estos son equivalentes a 0° y +90° respectivamente.

Pasos para rotar las etiquetas de la barra de colores:

  1. trazar una figura
  2. Trazar la barra de color correspondiente
  3. Proporcionar ticks y ticklabels
  4. Establezca la rotación de las etiquetas de marca en el ángulo deseado

Ejemplo 1: El siguiente programa demuestra una barra de color horizontal con una rotación de 45 grados de las etiquetas de la barra de color.

Python3

# Import libraries
import matplotlib.pyplot as plt
import numpy as np
  
# Plot image
a = np.random.random((10, 10))
plt.imshow(a, cmap='gray')
  
# Plot horizontal colorbar
cbar = plt.colorbar(
    orientation="horizontal", fraction=0.050)
  
# Set ticklabels
labels = [0, 0.1, 0.2, 0.3, 0.4, 0.5, 0.6,
          0.7, 0.8, 0.9, 1]
cbar.set_ticks(labels)
  
# Rotate colorbar ticklabels by 45 degrees
# anticlockwise
cbar.ax.set_xticklabels(labels, rotation=45)
  
plt.show()

Producción:

Ejemplo 2:  El siguiente programa demuestra una barra de color horizontal con una rotación de -45 grados de las etiquetas de la barra de color.

Python3

# Import libraries
import matplotlib.pyplot as plt
import numpy as np
  
# Plot image
a = np.random.random((10, 10))
plt.imshow(a, cmap='gray')
  
# Plot horizontal colorbar
cbar = plt.colorbar(
    orientation="horizontal", fraction=0.050)
  
# Set ticklabels
labels = [0, 0.1, 0.2, 0.3, 0.4, 0.5, 0.6,
          0.7, 0.8, 0.9, 1]
cbar.set_ticks(labels)
  
# Rotate colorbar ticklabels by 45 degrees clockwise
cbar.ax.set_xticklabels(labels, rotation=-45)
  
plt.show()

Producción:

Ejemplo 3:  El siguiente programa demuestra una barra de color vertical con una rotación de 30 grados de las etiquetas de la barra de color.

Python3

# Import libraries
import matplotlib.pyplot as plt
import numpy as np
  
# Plot image
a = np.random.random((10, 10))
plt.imshow(a, cmap='gray')
  
# Plot vertical colorbar
cbar = plt.colorbar(
    orientation="vertical", fraction=0.050)
  
# Set ticklabels
labels = [0, 0.1, 0.2, 0.3, 0.4, 0.5, 0.6,
          0.7, 0.8, 0.9, 1]
cbar.set_ticks(labels)
  
# Rotate colorbar ticklabels by 30 degrees
# anticlockwise
cbar.ax.set_yticklabels(labels, rotation=30)
  
plt.show()

Producción:

Ejemplo 4:  El siguiente programa demuestra una barra de color vertical con una rotación de -30 grados de las etiquetas de la barra de color.

Python3

# Import libraries
import matplotlib.pyplot as plt
import numpy as np
  
# Plot image
a = np.random.random((10, 10))
plt.imshow(a, cmap='gray')
  
# Plot vertical colorbar
cbar = plt.colorbar(
    orientation="vertical", fraction=0.050)
  
# Set ticklabels
labels = [0, 0.1, 0.2, 0.3, 0.4, 0.5, 0.6,
          0.7, 0.8, 0.9, 1]
cbar.set_ticks(labels)
  
# Rotate colorbar ticklabels by 30 degrees clockwise
cbar.ax.set_yticklabels(labels, rotation=-30)
  
plt.show()

Producción:

Ejemplo 5:  El siguiente programa demuestra una barra de color horizontal con rotación vertical de las etiquetas de la barra de color.

Python3

# Import libraries
import matplotlib.pyplot as plt
import numpy as np
  
# Plot image
a = np.random.random((10, 10))
plt.imshow(a, cmap='gray')
  
# Plot horizontal colorbar
cbar = plt.colorbar(
    orientation="horizontal", fraction=0.050)
  
# Set ticklabels
labels = [0, 0.1, 0.2, 0.3, 0.4, 0.5, 0.6,
          0.7, 0.8, 0.9, 1]
cbar.set_ticks(labels)
  
# Rotate colorbar ticklabels by 90 degrees
# anticlockwise using "vertical" value
cbar.ax.set_xticklabels(labels,
                        rotation="vertical")
  
plt.show()

Producción:

Ejemplo 6:  El siguiente programa demuestra una barra de color vertical con una rotación de 270 grados de las etiquetas de barra de color.

Python3

# Import libraries
import matplotlib.pyplot as plt
import numpy as np
  
# Plot image
a = np.random.random((10, 10))
plt.imshow(a, cmap='gray')
  
# Plot vertical colorbar
cbar = plt.colorbar(
    orientation="vertical", fraction=0.050)
  
# Set ticklabels
labels = [0, 0.1, 0.2, 0.3, 0.4, 0.5, 0.6,
          0.7, 0.8, 0.9, 1]
cbar.set_ticks(labels)
  
# Rotate colorbar ticklabels by 270 degrees
# anticlockwise
cbar.ax.set_yticklabels(labels, rotation=270)
plt.show()

Producción:

Publicación traducida automáticamente

Artículo escrito por hemavatisabu y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *