Takip koduna sahibim:
import matplotlib.pyplot as plt
cdict = {
'red' : ( (0.0, 0.25, .25), (0.02, .59, .59), (1., 1., 1.)),
'green': ( (0.0, 0.0, 0.0), (0.02, .45, .45), (1., .97, .97)),
'blue' : ( (0.0, 1.0, 1.0), (0.02, .75, .75), (1., 0.45, 0.45))
}
cm = m.colors.LinearSegmentedColormap('my_colormap', cdict, 1024)
plt.clf()
plt.pcolor(X, Y, v, cmap=cm)
plt.loglog()
plt.xlabel('X Axis')
plt.ylabel('Y Axis')
plt.colorbar()
plt.show()
Bu, belirtilen renk eşlemini kullanarak X ve Y eksenlerinde 'v' değerlerinin bir grafiğini üretir. X ve Y eksenleri mükemmel, ancak renk haritası min ve maks. V arasında yayılıyor. Renk haritasını 0 ile 1 arasında değişmeye zorlamak istiyorum.
Kullanmayı düşündüm:
plt.axis(...)
Eksenlerin aralıklarını ayarlamak, ancak bu yalnızca renk haritasına değil, yalnızca X ve Y'nin min ve maks.
Düzenle:
Açıklık için, değerleri (0 ... 0.3) olan bir grafiğim ve değerleri (0.2 ... 0.8) olan başka bir grafiğim olduğunu varsayalım.
Her iki grafikte de, renk çubuğunun aralığının (0 ... 1) olmasını isteyeceğim. Her iki grafikte de, yukarıdaki renk yelpazesi kullanılarak bu renk aralığının aynı olmasını istiyorum (böylece her iki grafikte de 0.25 aynı renk olacaktır). İlk grafikte, 0.3 ve 1.0 arasındaki tüm renkler grafikte yer almaz, ancak yandaki renk çubuğu tuşunda bulunur. Diğerinde, 0 ile 0.2 ve 0.8 ile 1 arasındaki tüm renkler grafikte bulunmayacak, yandaki renk çubuğunda olacaktır.