Я хочу создать одно раскрывающееся меню для каждого уровня в многоиндексном кадре данных (строки — это наблюдения, столбцы — элементы выборки).
Это довольно просто перебирать каждый кортеж с несколькими индексами и иметь одно раскрывающееся меню, но это невозможно при использовании больших наборов элементов на каждом уровне.
Наконец, я хотел бы сохранить его интерактивным в HTML-файле, насколько я понимаю, Dash не является вариантом (как и IPython.widgets)
import numpy as np
import pandas as pd
import plotly.graph_objects as go
## data looks something like this
categories = pd.Index(["A", "B"])
dates = pd.date_range(start="2026-01-01", end="2026-01-10", freq="D")
columns = pd.MultiIndex.from_product([dates, categories])
index = pd.Index(range(6), name="Observations")
x, y, z = (pd.DataFrame(
np.random.standard_normal(size=(len(index), len(columns))),
columns=columns,
index=index
) for _ in range(3))
## scatter plot
fig = go.Figure()
for date, cat in columns:
fig.add_scatter3d(
x=x[date, cat],
y=y[date, cat],
z=z[date, cat],
mode="markers",
)
fig.update_layout(updatemenus=[
dict(
x=0.85, y=1.00, xanchor="center", showactive=True,
buttons=[
dict(label=f"({date:%Y-%m-%d}, {cat})", method="restyle", visible=True, args=[{
"visible": np.arange(len(columns)) == c,
}])
for c, (date, cat) in enumerate(columns)
],
),
])
fig.show()
Подробнее здесь: https://stackoverflow.com/questions/798 ... ulti-index
По графику, имейте одно раскрывающееся меню для каждого уровня в мультииндексе DataFrame. ⇐ Python
Программы на Python
1768837903
Anonymous
Я хочу создать одно раскрывающееся меню для каждого уровня в многоиндексном кадре данных (строки — это наблюдения, столбцы — элементы выборки).
Это довольно просто перебирать каждый кортеж с несколькими индексами и иметь одно раскрывающееся меню, но это невозможно при использовании больших наборов элементов на каждом уровне.
Наконец, я хотел бы сохранить его интерактивным в HTML-файле, насколько я понимаю, Dash не является вариантом (как и IPython.widgets)
import numpy as np
import pandas as pd
import plotly.graph_objects as go
## data looks something like this
categories = pd.Index(["A", "B"])
dates = pd.date_range(start="2026-01-01", end="2026-01-10", freq="D")
columns = pd.MultiIndex.from_product([dates, categories])
index = pd.Index(range(6), name="Observations")
x, y, z = (pd.DataFrame(
np.random.standard_normal(size=(len(index), len(columns))),
columns=columns,
index=index
) for _ in range(3))
## scatter plot
fig = go.Figure()
for date, cat in columns:
fig.add_scatter3d(
x=x[date, cat],
y=y[date, cat],
z=z[date, cat],
mode="markers",
)
fig.update_layout(updatemenus=[
dict(
x=0.85, y=1.00, xanchor="center", showactive=True,
buttons=[
dict(label=f"({date:%Y-%m-%d}, {cat})", method="restyle", visible=True, args=[{
"visible": np.arange(len(columns)) == c,
}])
for c, (date, cat) in enumerate(columns)
],
),
])
fig.show()
Подробнее здесь: [url]https://stackoverflow.com/questions/79866095/plotly-have-one-dropdown-menu-for-each-level-in-dataframe-multi-index[/url]
Ответить
1 сообщение
• Страница 1 из 1
Перейти
- Кемерово-IT
- ↳ Javascript
- ↳ C#
- ↳ JAVA
- ↳ Elasticsearch aggregation
- ↳ Python
- ↳ Php
- ↳ Android
- ↳ Html
- ↳ Jquery
- ↳ C++
- ↳ IOS
- ↳ CSS
- ↳ Excel
- ↳ Linux
- ↳ Apache
- ↳ MySql
- Детский мир
- Для души
- ↳ Музыкальные инструменты даром
- ↳ Печатная продукция даром
- Внешняя красота и здоровье
- ↳ Одежда и обувь для взрослых даром
- ↳ Товары для здоровья
- ↳ Физкультура и спорт
- Техника - даром!
- ↳ Автомобилистам
- ↳ Компьютерная техника
- ↳ Плиты: газовые и электрические
- ↳ Холодильники
- ↳ Стиральные машины
- ↳ Телевизоры
- ↳ Телефоны, смартфоны, плашеты
- ↳ Швейные машинки
- ↳ Прочая электроника и техника
- ↳ Фототехника
- Ремонт и интерьер
- ↳ Стройматериалы, инструмент
- ↳ Мебель и предметы интерьера даром
- ↳ Cантехника
- Другие темы
- ↳ Разное даром
- ↳ Давай меняться!
- ↳ Отдам\возьму за копеечку
- ↳ Работа и подработка в Кемерове
- ↳ Давай с тобой поговорим...
Мобильная версия