Документация по Python

Визуализация данных с Python

В: Документация по Python

Matplotlib

Matplotlib является математической библиотекой зарисовки для Python , которая предоставляет множество различного функционального черчения.

Документацию Matplotlib можно найти здесь , с SO Docs будет доступна здесь .

Matplotlib предоставляет два различных метода для построения графиков, хотя по большей части они взаимозаменяемы:

  • Во - первых, Matplotlib обеспечивает pyplot интерфейс, прямой и простой в использовании интерфейс , который позволяет прорисовку сложных графиков в MATLAB-подобный стиль.
  • Во-вторых, matplotlib позволяет пользователю управлять различными аспектами (осями, линиями, галочками и т. Д.) Напрямую, используя систему на основе объектов. Это сложнее, но позволяет полностью контролировать весь сюжет.

Ниже приведен пример использования pyplot интерфейса для построения некоторых сгенерированных данные:

 import matplotlib.pyplot as plt

# Generate some data for plotting.
x = [0, 1, 2, 3, 4, 5, 6]
y = [i**2 for i in x]

# Plot the data x, y with some keyword arguments that control the plot style.
# Use two different plot commands to plot both points (scatter) and a line (plot).

plt.scatter(x, y, c='blue', marker='x', s=100) # Create blue markers of shape "x" and size 100
plt.plot(x, y, color='red', linewidth=2) # Create a red line with linewidth 2.

# Add some text to the axes and a title.
plt.xlabel('x data')
plt.ylabel('y data')
plt.title('An example plot')

# Generate the plot and show to the user.
plt.show()

 

Обратите внимание , что plt.show() , как известно, проблематично в некоторых средах за счет запуска matplotlib.pyplot в интерактивном режиме, и если да, то поведение блокировки может быть переопределен в явном виде путем передачи в дополнительный аргумент, plt.show(block=True) , чтобы облегчить эту проблему.

рожденное море

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

Создание графиков в Seaborn так же просто, как вызов соответствующей графической функции. Вот пример создания гистограммы, оценки плотности ядра и графика коврика для случайно сгенерированных данных.

 import numpy as np  # numpy used to create data from plotting
import seaborn as sns  # common form of importing seaborn

# Generate normally distributed data
data = np.random.randn(1000)

# Plot a histogram with both a rugplot and kde graph superimposed
sns.distplot(data, kde=True, rug=True)

 

Стиль сюжета также можно контролировать с помощью декларативного синтаксиса.

 # Using previously created imports and data.

# Use a dark background with no grid.
sns.set_style('dark')
# Create the plot again
sns.distplot(data, kde=True, rug=True)

 

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

 # Using previously created data and style

# Access to matplotlib commands
import matplotlib.pyplot as plt

# Previously created plot. 
sns.distplot(data, kde=True, rug=True)
# Set the axis labels.
plt.xlabel('This is my x-axis')
plt.ylabel('This is my y-axis')

 

MayaVi

MayaVi это инструмент 3D визуализации научных данных. Он использует набор инструментов визуализации или VTK под капотом. Используя силу ВТК , MayaVi способен производить различные 3-мерных графиков и цифр. Он доступен в виде отдельного программного приложения, а также в виде библиотеки. Подобно Matplotlib , эта библиотека предоставляет объектно - ориентированный язык интерфейса программирования для создания графиков без необходимости знать о ВТК.

MayaVI доступен только в серии Python 2.7x! Ожидается, что он скоро будет доступен в серии Python 3-x! (Хотя некоторый успех замечен при использовании его зависимостей в Python 3)

Документация может быть найдена здесь . Некоторые примеры галереи находятся здесь

Вот пример сюжет создан с использованием MayaVi из документации.

 # Author: Gael Varoquaux <gael.varoquaux@normalesup.org>
# Copyright (c) 2007, Enthought, Inc.
# License: BSD Style.


from numpy import sin, cos, mgrid, pi, sqrt
from mayavi import mlab

mlab.figure(fgcolor=(0, 0, 0), bgcolor=(1, 1, 1))
u, v = mgrid[- 0.035:pi:0.01, - 0.035:pi:0.01]

X = 2 / 3. * (cos(u) * cos(2 * v)
        + sqrt(2) * sin(u) * cos(v)) * cos(u) / (sqrt(2) -
                                                 sin(2 * u) * sin(3 * v))
Y = 2 / 3. * (cos(u) * sin(2 * v) -
        sqrt(2) * sin(u) * sin(v)) * cos(u) / (sqrt(2)
        - sin(2 * u) * sin(3 * v))
Z = -sqrt(2) * cos(u) * cos(u) / (sqrt(2) - sin(2 * u) * sin(3 * v))
S = sin(u)

mlab.mesh(X, Y, Z, scalars=S, colormap='YlGnBu', )

# Nice view from the front
mlab.view(.0, - 5.0, 4)
mlab.show()

 

Plotly

Plotly современная платформа для построения и визуализации данных. Полезно для производства различных участков, особенно для науки данных, Plotly доступна как библиотека для Python, R, JavaScript, Юль и, MATLAB. Он также может быть использован как веб-приложение с этими языками.

Пользователи могут установить библиотеку plotly и использовать ее в автономном режиме после аутентификации пользователя. Установка этой библиотеки и в автономном режиме аутентификации дается здесь . Кроме того , участки могут быть сделаны в Jupyter ноутбуков , а также.

Для использования этой библиотеки требуется учетная запись с именем пользователя и паролем. Это дает рабочее пространство для сохранения графиков и данных в облаке.

Бесплатная версия библиотеки имеет несколько ограниченные возможности и рассчитана на 250 сюжетов в день. Платная версия имеет все функции, неограниченное количество скачиваний сюжетов и более приватное хранилище данных. Для получения более подробной информации можно посетить главную страницу здесь .

Для документации и примеров, можно пойти здесь

Пример сюжета из примеров документации:

 import plotly.graph_objs as go
import plotly as ply

# Create random data with numpy
import numpy as np

N = 100
random_x = np.linspace(0, 1, N)
random_y0 = np.random.randn(N)+5
random_y1 = np.random.randn(N)
random_y2 = np.random.randn(N)-5

# Create traces
trace0 = go.Scatter(
    x = random_x,
y = random_y0,
mode = 'lines',
name = 'lines'
)
trace1 = go.Scatter(
    x = random_x,
    y = random_y1,
    mode = 'lines+markers',
    name = 'lines+markers'
)
trace2 = go.Scatter(
    x = random_x,
    y = random_y2,
    mode = 'markers',
    name = 'markers'
)
data = [trace0, trace1, trace2]

ply.offline.plot(data, filename='line-mode')

 
Еще от кодкамп
Замечательно! Вы успешно подписались.
Добро пожаловать обратно! Вы успешно вошли
Вы успешно подписались на кодкамп.
Срок действия вашей ссылки истек.
Ура! Проверьте свою электронную почту на наличие волшебной ссылки для входа.
Успех! Ваша платежная информация обновлена.
Ваша платежная информация не была обновлена.