Альтаирная диаграмма пуста к выпадению, когда отображается другая диаграммаPython

Программы на Python
Ответить Пред. темаСлед. тема
Anonymous
 Альтаирная диаграмма пуста к выпадению, когда отображается другая диаграмма

Сообщение Anonymous »

Я хочу иметь две разные диаграммы, где в первом я могу выбрать художника в легенде, а во втором диаграмме я хочу иметь выпадающий список, фильтровал год. В моей базе данных у меня есть артисты, продажи и годы (для опубликованных альбомов). Диаграммы работают само по себе, но если я хочу показать оба с вертикальной конкатенацией, у меня возникает проблема. Первая диаграмма работает, как и ожидалось, но второй график полностью пуст на выборе года. < /P>
import altair as alt
import pandas as pd

# Sample Data
top = pd.DataFrame({
'Artist': ['Artist1', 'Artist2', 'Artist3', 'Artist1', 'Artist2', 'Artist3'],
'Sales': [100, 200, 300, 150, 250, 350],
'Year': ['2020', '2020', '2020', '2021', '2021', '2021'],
})

# Selection for the legend
select_artist_legend = alt.selection_point(fields=["Artist"], bind="legend")

# First plot (cumulative sales over years)
line = alt.Chart(top).transform_window(
cumulative_sales='sum(Sales)',
sort=[{'field': 'Year'}],
groupby=['Artist']
).mark_line().encode(
alt.X("Year:T"),
alt.Y("cumulative_sales:Q"),
alt.Color("Artist:N"),
opacity=alt.condition(select_artist_legend, alt.value(1.0), alt.value(0.1))
).add_params(select_artist_legend)

# Dropdown selection for the year
year_dd = alt.binding_select(options=sorted(top.Year.unique()), name="Year")
year_select = alt.selection_point(fields=["Year"], bind=year_dd, name='year_select')

# Third plot (sales by artist for selected year)
bar = alt.Chart(top).mark_bar().encode(
alt.X("Artist:N"),
alt.Y("Sales:Q"),
alt.Color("Artist:N")
).add_params(year_select).transform_filter(year_select)

# Combine the charts
combined_chart = line & bar
combined_chart
< /code>
Примечание: я использую код VS и ноутбуки Python < /p>
Я попытался отлаживать и пытался разделить две диаграммы больше, похоже, не помог. Я также дважды пробовал складывание стержней вместо того, чтобы уложить линию и стержень, но там все работает, поэтому укладка сама по себе не было проблемой.

Подробнее здесь: https://stackoverflow.com/questions/785 ... -displayed
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «Python»