Чтобы создать логарифмическую шкалу в функции matshowmatplotlib, вы можете использовать параметр normвместе с функцией логарифмической нормализации. Вот несколько методов, которые вы можете использовать:
Метод 1: использование matplotlib.colors.LogNorm
import matplotlib.pyplot as plt
import matplotlib.colors as colors
import numpy as np
# Create a 2D array
data = np.random.rand(10, 10)
# Create a logarithmic normalization
norm = colors.LogNorm(vmin=data.min(), vmax=data.max())
# Plot the data with matshow
plt.matshow(data, norm=norm)
# Add colorbar for reference
plt.colorbar()
# Show the plot
plt.show()
Метод 2: использование numpy.logи matplotlib.pyplot.imshow
import matplotlib.pyplot as plt
import numpy as np
# Create a 2D array
data = np.random.rand(10, 10)
# Take the logarithm of the data
log_data = np.log(data)
# Plot the logarithmic data with imshow
plt.imshow(log_data)
# Add colorbar for reference
plt.colorbar()
# Show the plot
plt.show()
Метод 3: использование numpy.log10и matplotlib.pyplot.matshow
import matplotlib.pyplot as plt
import numpy as np
# Create a 2D array
data = np.random.rand(10, 10)
# Take the base-10 logarithm of the data
log_data = np.log10(data)
# Plot the logarithmic data with matshow
plt.matshow(log_data)
# Add colorbar for reference
plt.colorbar()
# Show the plot
plt.show()