Настройте расходящуюся цветовую карту matplotlib по умолчанию, чтобы 0 всегда соответствовал нейтральному цвету.Python

Программы на Python
Ответить Пред. темаСлед. тема
Anonymous
 Настройте расходящуюся цветовую карту matplotlib по умолчанию, чтобы 0 всегда соответствовал нейтральному цвету.

Сообщение Anonymous »

Я хотел бы настроить цветовую карту matplotlib по умолчанию таким образом, чтобы «нейтральный» цвет (цвет перехода между «положительным» и «отрицательным» цветом) всегда соответствовал 0.
Пример (обратите внимание, что выбор матрицы в качестве входных данных и построение графика с использованием plt.imshow() — это всего лишь пример. Меня интересует только объект cmap и результирующая цветовая шкала справа. Вы можно также подумать о других способах визуализации данных):

Код: Выделить всё

import numpy as np
import matplotlib.pyplot as plt

# Generate a matrix with lots of positive values and a few negative values
np.random.seed(42)  # For reproducibility
shape = (20,20)  # Shape of the matrix
a = 1  # Shape parameter (alpha)
scale = 2.0  # Scale parameter (beta)
matrix = np.random.gamma(a, scale, size=shape) # Create random numbers
matrix = matrix - 1 # We also want negative numbers
matrix  = matrix * -1  # flip values so that lots of numbers are positive and few are negative
matrix[0,0:3] = 0 # some values should be set to exactly 0
matrix[1,0:3] = np.nan # some values should be np.nan
matrix = np.random.permutation(matrix.flatten()).reshape(matrix.shape)
cmap = 'RdBu_r'  # Choose colorscale

# plot matrix and colorscale
plt.figure(figsize=(8, 6))
plt.imshow(matrix, cmap="RdBu_r")
plt.colorbar(label='Matrix')
который создает:
Изображение

Как видите, 0 здесь не соответствует белому цвету, а это то, что мне нужно.

Подробнее здесь: https://stackoverflow.com/questions/791 ... ches-the-n
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «Python»