Plotly для визуализации данных с Python|Python Theme Month

задняя часть Python визуализация данных
Plotly для визуализации данных с Python|Python Theme Month

Эта статья участвует в "Месяце тем Python", подробнее см.Ссылка на мероприятие

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

  • Potly имеет функцию наведения, которая позволяет нам обнаруживать любые выбросы или аномалии среди многочисленных точек данных.
  • Это позволяет больше настроек.
  • Это делает графику более визуально привлекательной.

Установить

Чтобы установить его, введите следующую команду в терминале.

pip install plotly

image.png

График рассеяния

Графики рассеяния Plotly можно создать с помощьюscatter()метод plotly.express. Как и Seaborn, здесь требуется дополнительный параметр данных.

пример:

import plotly.express as px
import pandas as pd

# 读取数据库
data = pd.read_csv("tips.csv")

# 绘制散点图
fig = px.scatter(data, x="day", y="tip", color='sex')

# 显示plot
fig.show()

вывод:

image.png

линейный график

Линейные диаграммы в Plotly выглядят интуитивно понятными и представляют собой отличное сочетание plotly, которое управляет различными типами данных и собирает легко стилизованную статистику. Используйте px.line для представления каждого местоположения данных в виде вершины.

пример:

import plotly.express as px
import pandas as pd

# 读取数据库
data = pd.read_csv("tips.csv")

# 绘制散点图
fig = px.line(data, y='tip', color='sex')

# 显示plot
fig.show()

image.png

гистограмма

Гистограммы в Plotly можно создавать с помощью метода bar() класса plotly.express.

пример:

import plotly.express as px
import pandas as pd

# 读取数据库
data = pd.read_csv("tips.csv")

# 绘制散点图
fig = px.bar(data, x='day', y='tip', color='sex')

# 显示情节
fig.show()

вывод:

image.png

Гистограмма

В plotly гистограммы можно создавать с помощью функции histogram() класса plotly.express.

пример:

import plotly.express as px
import pandas as pd

# 读取数据库
data = pd.read_csv("tips.csv")

# 绘制散点图
fig = px.histogram(data, x='total_bill', color='sex')

# 显示 plot
fig.show()

вывод:

image.png

добавить взаимодействие

Также как Bokeh Truelly также предоставляет различные взаимодействия. Давайте обсудим несколько из них.

Создайте раскрывающееся меню: раскрывающееся меню является частью кнопки меню и всегда отображается на экране. Каждая кнопка меню связана с виджетом меню, который отображает параметры кнопки меню при нажатии. В сюжете есть 4 возможных способа изменить диаграмму с помощью метода updatemenu.

  • рестайлинг:Изменить данные или атрибуты данных
  • ретрансляция:Изменить свойства макета
  • Обновить:Изменение свойств данных и макета
  • оживить:Запустить или приостановить анимацию

пример:

import plotly.graph_objects as px
import pandas as pd

# 读取数据库
data = pd.read_csv("tips.csv")


plot = px.Figure(data=[px.Scatter(
	x=data['day'],
	y=data['tip'],
	mode='markers',)
])

# 添加下拉菜单
plot.update_layout(
	updatemenus=[
		dict(
			buttons=list([
				dict(
					args=["type", "scatter"],
					label="Scatter Plot",
					method="restyle"
				),
				dict(
					args=["type", "bar"],
					label="Bar Chart",
					method="restyle"
				)
			]),
			direction="down",
		),
	]
)

plot.show()

вывод:

dropdownplotly.gif

Кнопка «Добавить»: в сюжете настраиваемые кнопки действий используются для быстрого выполнения действий непосредственно из записи. Пользовательские кнопки можно добавлять в макеты страниц в CRM, маркетинговых и пользовательских приложениях. Есть также 4 возможных метода, которые можно применить к пользовательским кнопкам:

  • рестайлинг:Изменить данные или атрибуты данных
  • ретрансляция:Изменить свойства макета
  • Обновить:Изменение свойств данных и макета
  • оживить:Запустить или приостановить анимацию

пример:

import plotly.graph_objects as px
import pandas as pd

# 读取数据库
data = pd.read_csv("tips.csv")


plot = px.Figure(data=[px.Scatter(
	x=data['day'],
	y=data['tip'],
	mode='markers',)
])

# 添加下拉菜单
plot.update_layout(
	updatemenus=[
		dict(
			type="buttons",
			direction="left",
			buttons=list([
				dict(
					args=["type", "scatter"],
					label="Scatter Plot",
					method="restyle"
				),
				dict(
					args=["type", "bar"],
					label="Bar Chart",
					method="restyle"
				)
			]),
		),
	]
)

plot.show()

вывод:

buttonplotly.gif

Создайте ползунки и селекторы:

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

пример:

import plotly.graph_objects as px
import pandas as pd

# 读取数据库
data = pd.read_csv("tips.csv")

plot = px.Figure(data=[px.Scatter(
	y=data['tip'],
	mode='lines',)
])

plot.update_layout(
	xaxis=dict(
		rangeselector=dict(
			buttons=list([
				dict(count=1,
					step="day",
					stepmode="backward"),
			])
		),
		rangeslider=dict(
			visible=True
		),
	)
)

plot.show()

вывод:

sliderplotly.gif

резюме

В этой серии руководств мы используем четыре различных модуля построения графиков Python (т.е.Matplotlib,Seaborn,Bokehи Plotly) построили набор данных подсказок. Каждый модуль отображает графики по-своему, каждый модуль имеет свой набор функций, например, Matplotlib обеспечивает большую гибкость за счет написания большего количества кода, а Seaborn, как язык высокого уровня, позволяет людям передавать небольшое количество код. Каждый модуль можно использовать в соответствии с задачей, которую мы хотим выполнить.

🥇 Резюме серии Python для визуализации данных

🧵 Другие статьи по теме

🍰Рекомендуемые статьи из прошлого:

Если вы действительно узнали что-то новое из этой статьи, ставьте лайк, добавляйте в закладки и делитесь с друзьями. 🤗Наконец, не забудьте поддержать ❤ или 📑