¡Hola Geeks! En este artículo, intentaremos establecer la gama de colores usando el módulo de Python matplotlib. Matplotlib nos permite una amplia gama de personalización de Colorbar. Colorbar es simplemente una instancia de plt.Axes. Proporciona una escala para la relación número-color basada en los datos de un gráfico. Establecer un rango limita los colores a una subsección, The Colorbar transmite falsamente la información de que el límite inferior de los datos es comparable con su límite superior. Con los dos límites diferentes, puede controlar el rango y la leyenda de la barra de colores.
Requisito: Matplotlib, NumPy
Para la instalación Matplotlib
pip install matplotlib
Para la instalación Numpy.
pip install numpy
Entendamos con la implementación paso a paso:
Paso 1:
Importe la biblioteca requerida y configure algunos datos genéricos.
Python3
import numpy as np import matplotlib.pyplot as plt # setup some generic data N = 37 x, y = np.mgrid[:N, :N] Z = (np.cos(x*0.2) + np.sin(y*0.3))
Paso 2:
Enmascare los valores negativos y positivos.
Python3
Zpos = np.ma.masked_less(Z, 0) Zneg = np.ma.masked_greater(Z, 0)
Paso 3:
Muestre los datos como una imagen, es decir, en un ráster regular 2D.
Python3
# plot just the positive data and save the # color "mappable" object returned by ax1.imshow pos = ax1.imshow(Zpos, cmap = 'Blues', interpolation = 'none')
Paso 4:
Trazar valores positivos y negativos entre +/- 1.2
Python3
fig, (ax1, ax2, ax3) = plt.subplots(figsize=(13, 3), ncols = 3) pos_neg_clipped = ax3.imshow(Z, cmap = 'RdBu', vmin = -1.2, vmax = 1.2) # Add minorticks on the colorbar to make # it easy to read the values off the colorbar. color_bar = fig.colorbar(pos_neg_clipped, ax = ax3, extend = 'both') color_bar.minorticks_on() plt.show()
Producción:
A continuación se muestra la implementación completa:
Python3
import numpy as np import matplotlib.pyplot as plt # setup some generic data N = 37 x, y = np.mgrid[:N, :N] Z = (np.cos(x*0.2) + np.sin(y*0.3)) # mask out the negative and positive values Zpositive = np.ma.masked_less(Z, 0) Znegative = np.ma.masked_greater(Z, 0) fig, (ax1, ax2, ax3) = plt.subplots(figsize = (13, 3), ncols = 3) # plot just the positive data and save the # color "mappable" object returned by ax1.imshow pos = ax1.imshow(Zpositive, cmap = 'Blues') # add the colorbar using the figure's method, fig.colorbar(pos, ax = ax1) # repeat everything above for the negative data neg = ax2.imshow(Znegative, cmap = 'Reds_r') fig.colorbar(neg, ax = ax2) # Plot both positive and negative values between +/- 1.2 pos_neg_clipped = ax3.imshow(Z, cmap = 'RdBu', vmin = -1.2, vmax = 1.2) # Add minorticks on the colorbar to make # it easy to read the values off the colorbar. color_bar = fig.colorbar(pos_neg_clipped, ax = ax3, extend = 'both') color_bar.minorticks_on() plt.show()
Producción: