Seaborn не устанавливает цветовую палитру по умолчанию при импорте
Есть много ссылок, в которых говорится, что графики Matplotlib выглядели бы более приятными из-за цветовой палитры Seaborn, просто импортируя Seaborn как
import seaborn as sns
Однако, когда я делаю это, цвета и форматирование по-прежнему выглядят как простые значения по умолчанию для matlotlib как для сюжета matplotlib, так и для seaborn. Это если команда sns.set()
выполняется для принудительного сброса палитры по умолчанию для морского побережья.
Почему это происходит и как это исправить?
Как был установлен seaborn: это происходит в моем Ubuntu 14.04 под управлением Anaconda, хотя seaborn был установлен через pip
так как версия Anaconda в системе не поставляется с предустановленной. Я пытался установить Seaborn через conda
для обеих моих сред, py27
а также py35
, Хотя установка прошла успешно, импорт не работал, поэтому я продолжил pip
,
Хотя seaborn работает отлично, обе среды по-прежнему импортируются с одинаковыми неприятными цветами по умолчанию для matplitlib.
1 ответ
Вы используете Seaborn версии 0.8 или выше. Журнал изменений говорит нам:
Стиль по умолчанию больше не применяется при импорте seaborn. Теперь необходимо явно вызвать
set()
или один или несколько изset_style()
,set_context()
, а такжеset_palette()
, Соответственно, модуль seaborn.apionly устарел.
Для этого есть очень веская причина. Ранее, только потому что вы импортировали seaborn, это полностью изменило бы стиль matplotlib, возможно даже перезаписав ранее установленные стили matplotlib. И то, и другое обычно нежелательно.
Как вы сами узнали, нужно позвонить seaborn.set()
чтобы получить стиль seaborn по умолчанию или использовать любой другой стиль seaborn.
Вы также можете использовать стили seaborn с matplotlib и вообще не использовать seaborn. Например
import matplotlib.pyplot as plt
plt.style.use("seaborn-darkgrid")
или любой другой стиль из таблицы стилей