Подтвердить что ты не робот

Цветовая палитра Matplotlib

Можно ли изменить цвета, которые Matplotlib циклически проходит, когда он генерирует свои собственные цвета для линий графика? Я использую модуль pylab.

from pylab import *
import matplotlib.cm as cm

x=[1,2,3,4]
y=[5,6,7,8]

fig1 = Figure()

plot1 = fig1.add_subplot(311)
plot1.plot(x,y)

plot2 = fig1.add_subplot(312)
plot2.plot(x,y)

plot3 = fig1.add_subplot(313)
plot3.plot(x,y)
4b9b3361

Ответ 1

Цвета извлекаются из цветных карт. Вы можете использовать один из предопределенных цветовых кодов или определить свой собственный.

К сожалению, нет способа использовать несколько цветовых карт на фигуре, вы должны сделать это вручную:

import pylab as pl
import matplotlib.cm as cm

xval = pl.arange(0, 20, 0.2)

pl.subplot(311)
pl.plot(xval, pl.sin(xval), c=cm.summer(0))

pl.subplot(312)
pl.plot(xval, pl.cos(xval), c=cm.spring(0))

pl.subplot(313)
pl.plot(xval, pl.arctan(xval), xval, pl.fabs(xval))

pl.show()

MZmzv.png

Ответ 2

Да, конечно. Потому что он принимает много видов определения цвета. Легко определить собственную цветовую карту. Здесь я просто получаю цвета из цветовой палитры hot

import pylab as py
import numpy as np
import matplotlib.cm as cm
a = np.arange(0,10)

py.figure()
for i in np.arange(10):
    c = cm.hot(i/10.,1)
    py.plot(a,i*a,color=c)

py.show()

alt text