Вам необходимо установить палитру до создания подплота.Это потому, что цветовой цикл является свойством осей.Оси будут принимать текущее свойство cycler из rcParams
во время создания.Так что set_palette
, который изменяет свойство cycler, необходимо вызвать заранее.
import numpy as np
import seaborn as sns
import matplotlib.pyplot as plt
x = np.arange(10)
# First subplot
pal1 = sns.color_palette("rainbow", 12)
sns.set_palette(pal1)
plt.subplot(2, 1, 1)
for i in range(4):
plt.plot(x, i*np.sin(x))
# Second subplot
pal2 = sns.color_palette("Set1", 12)
sns.set_palette(pal2)
plt.subplot(2, 1, 2)
for i in range(4):
plt.plot(x, i*np.cos(x))
plt.tight_layout()
plt.show()