Учебники

Сиборн — Эстетическая фигура

Визуализация данных — это один шаг, а дальнейшее улучшение визуализации данных — еще один шаг. Визуализация играет жизненно важную роль в передаче количественных данных аудитории, чтобы привлечь их внимание.

Эстетика означает совокупность принципов, касающихся природы и ценности красоты, особенно в искусстве. Визуализация — это искусство представления данных эффективным и простым способом.

Библиотека Matplotlib отлично поддерживает настройку, но для ее использования необходимо знать, какие настройки нужно настроить для получения привлекательного и ожидаемого сюжета. В отличие от Matplotlib, Seaborn поставляется с настроенными темами и высокоуровневым интерфейсом для настройки и управления внешним видом фигур Matplotlib.

пример

import numpy as np
from matplotlib import pyplot as plt
def sinplot(flip = 1):
   x = np.linspace(0, 14, 100)
   for i in range(1, 5): 
      plt.plot(x, np.sin(x + i * .5) * (7 - i) * flip)
sinplot()
plt.show()

Вот как выглядит сюжет с настройками по умолчанию Matplotlib —

Matplotlib

Чтобы изменить тот же график на значения по умолчанию Seaborn, используйте функцию set ()

пример

import numpy as np
from matplotlib import pyplot as plt
def sinplot(flip = 1):
   x = np.linspace(0, 14, 100)
   for i in range(1, 5):
      plt.plot(x, np.sin(x + i * .5) * (7 - i) * flip)
import seaborn as sb
sb.set()
sinplot()
plt.show()

Выход

выход

Приведенные выше два рисунка показывают разницу в графиках по умолчанию Matplotlib и Seaborn. Представление данных одинаково, но стиль представления различен в обоих случаях.

По сути, Seaborn разбивает параметры Matplotlib на две группы:

  • Стили сюжета
  • Масштаб участка

Seaborn Figure Styles

Интерфейсом для манипулирования стилями является set_style () . С помощью этой функции вы можете установить тему сюжета. Согласно последней обновленной версии, ниже представлены пять доступных тем.

  • Darkgrid
  • Whitegrid
  • Темно
  • белый
  • Клещи

Давайте попробуем применить тему из вышеупомянутого списка. Темой по умолчанию для сюжета будет darkgrid, которую мы видели в предыдущем примере.

пример

import numpy as np
from matplotlib import pyplot as plt
def sinplot(flip=1):
   x = np.linspace(0, 14, 100)
   for i in range(1, 5):
      plt.plot(x, np.sin(x + i * .5) * (7 - i) * flip)
import seaborn as sb
sb.set_style("whitegrid")
sinplot()
plt.show()

Выход

Темная сторона

Разница между двумя приведенными выше графиками заключается в цвете фона

Снятие Оси Колючки

В темах white и ticks мы можем удалить верхнюю и правую оси, используя функцию despine () .

пример

import numpy as np
from matplotlib import pyplot as plt
def sinplot(flip=1):
   x = np.linspace(0, 14, 100)
   for i in range(1, 5):
      plt.plot(x, np.sin(x + i * .5) * (7 - i) * flip)
import seaborn as sb
sb.set_style("white")
sinplot()
sb.despine()
plt.show()

Выход

Шипы

На обычных графиках мы используем только левую и нижнюю оси. Используя функцию despine () , мы можем избежать ненужных шипов правой и верхней осей, что не поддерживается в Matplotlib.

Переопределение элементов

Если вы хотите настроить стили Seaborn, вы можете передать словарь параметров в функцию set_style () . Доступные параметры просматриваются с помощью функции axes_style () .

пример

import seaborn as sb
print sb.axes_style

Выход

{'axes.axisbelow'     : False,
'axes.edgecolor'      : 'white',
'axes.facecolor'      : '#EAEAF2',
'axes.grid'           : True,
'axes.labelcolor'     : '.15',
'axes.linewidth'      : 0.0,
'figure.facecolor'    : 'white',
'font.family'         : [u'sans-serif'],
'font.sans-serif'     : [u'Arial', u'Liberation  
                        Sans', u'Bitstream Vera Sans', u'sans-serif'],
'grid.color'          : 'white',
'grid.linestyle'      : u'-',
'image.cmap'          : u'Greys',
'legend.frameon'      : False,
'legend.numpoints'    : 1,
'legend.scatterpoints': 1,
'lines.solid_capstyle': u'round',
'text.color'          : '.15',
'xtick.color'         : '.15',
'xtick.direction'     : u'out',
'xtick.major.size'    : 0.0,
'xtick.minor.size'    : 0.0,
'ytick.color'         : '.15',
'ytick.direction'     : u'out',
'ytick.major.size'    : 0.0,
'ytick.minor.size'    : 0.0}

Изменение значений любого параметра изменит стиль графика.

пример

import numpy as np
from matplotlib import pyplot as plt
def sinplot(flip=1):
   x = np.linspace(0, 14, 100)
   for i in range(1, 5):
      plt.plot(x, np.sin(x + i * .5) * (7 - i) * flip)
import seaborn as sb
sb.set_style("darkgrid", {'axes.axisbelow': False})
sinplot()
sb.despine()
plt.show()

Выход

элементы

Масштабирование элементов графика

У нас также есть контроль над элементами графика и мы можем контролировать масштаб графика с помощью функции set_context () . У нас есть четыре предустановленных шаблона для контекстов, основанные на относительном размере, контексты названы следующим образом

  • Бумага
  • Ноутбук
  • Говорить
  • плакат

По умолчанию контекст установлен на блокнот; и был использован на графиках выше.

пример

import numpy as np
from matplotlib import pyplot as plt
def sinplot(flip = 1):
   x = np.linspace(0, 14, 100)
   for i in range(1, 5):
      plt.plot(x, np.sin(x + i * .5) * (7 - i) * flip)
import seaborn as sb
sb.set_style("darkgrid", {'axes.axisbelow': False})
sinplot()
sb.despine()
plt.show()

Выход

пересчет

Выходной размер реального графика больше по сравнению с вышеупомянутыми графиками.

Примечание. Из-за масштабирования изображений на нашей веб-странице вы можете пропустить фактическую разницу в наших примерах.