Berikut ini contohnya
import numpy as np
import matplotlib.pyplot as plt
x = np.random.rand(100)
y = np.random.rand(100)
t = np.arange(100)
plt.scatter(x, y, c=t)
plt.show()
Di sini Anda mengatur warna berdasarkan indeks t
, yang hanya berupa array [1, 2, ..., 100]
.
Mungkin contoh yang lebih mudah dipahami adalah yang sedikit lebih sederhana
import numpy as np
import matplotlib.pyplot as plt
x = np.arange(100)
y = x
t = x
plt.scatter(x, y, c=t)
plt.show()
Perhatikan bahwa larik yang Anda lewati c
tidak perlu memiliki urutan atau tipe tertentu, yaitu tidak perlu diurutkan atau bilangan bulat seperti dalam contoh ini. Rutin plotting akan menskalakan peta warna sedemikian rupa sehingga nilai minimum / maksimum c
sesuai dengan bagian bawah / atas peta warna.
Colormaps
Anda dapat mengubah peta warna dengan menambahkan
import matplotlib.cm as cm
plt.scatter(x, y, c=t, cmap=cm.cmap_name)
Mengimpor matplotlib.cm
adalah opsional karena Anda juga dapat memanggil colormaps cmap="cmap_name"
. Ada halaman referensi peta warna yang menunjukkan tampilan masing-masing. Ketahuilah juga bahwa Anda dapat membalikkan peta warna hanya dengan menyebutnya sebagai cmap_name_r
. Begitu juga
plt.scatter(x, y, c=t, cmap=cm.cmap_name_r)
plt.scatter(x, y, c=t, cmap="cmap_name_r")
akan bekerja. Contohnya adalah "jet_r"
atau cm.plasma_r
. Berikut adalah contoh dengan 1.5 colormap viridis baru:
import numpy as np
import matplotlib.pyplot as plt
x = np.arange(100)
y = x
t = x
fig, (ax1, ax2) = plt.subplots(1, 2)
ax1.scatter(x, y, c=t, cmap='viridis')
ax2.scatter(x, y, c=t, cmap='viridis_r')
plt.show()
Colorbars
Anda dapat menambahkan colorbar dengan menggunakan
plt.scatter(x, y, c=t, cmap='viridis')
plt.colorbar()
plt.show()
Perhatikan bahwa jika Anda menggunakan gambar dan subplot secara eksplisit (mis. fig, ax = plt.subplots()
Atau ax = fig.add_subplot(111)
), menambahkan bilah warna bisa sedikit lebih melibatkan. Contoh bagus dapat ditemukan di sini untuk satu subplot colorbar dan di sini untuk 2 subplot 1 colorbar .
plt.colorbar()
perintah.