Wizard Notes

Python, JavaScript を使った音楽信号分析の技術録、作曲活動に関する雑記

matplotlibでcolormapを逆にする方法

f:id:Kurene:20191220175913p:plain

matplotlibでは多数のカラーマップが用意されています。

Choosing Colormaps in Matplotlib — Matplotlib 3.1.0 documentation

データに手を加えずカラーマップを逆にしてプロットするのは、<span style="color: #d32f2f">カラーマップを指定する引数 cmap に与えるカラーマップ名の後ろに "_r" を加えることで実現できます。

例: cmap="jet" => cmap="jet_r"

サンプルコード

import numpy as np
import matplotlib.pyplot as plt
from sklearn.datasets import load_iris


def subplot(data, cmap, idx):
    plt.subplot(2,2, idx)
    plt.imshow(data, aspect="auto", cmap=cmap)
    plt.title(cmap)
    plt.colorbar()

data = load_iris().data

subplot(data, "coolwarm", 1)
subplot(data, "coolwarm_r", 3)
subplot(data, "jet", 2)
subplot(data, "jet_r", 4)

plt.tight_layout()
plt.show()