Zacznij terazZacznij za darmo

Wstępny dashboard sprzedażowy

Twoja dotychczasowa praca zrobiła świetne wrażenie na firmie e-commerce i teraz proszą cię o pomoc w całkowitym zastąpieniu ich obecnych dashboardów. Dotychczasowe rozwiązania wymagają drogiego, zastrzeżonego oprogramowania, które co miesiąc kosztuje organizację ogromne sumy.

To nie będzie jeszcze finalny produkt – firma chce jedynie wstępny szkic tego, co można osiągnąć przy użyciu Dash. Zależy im na wykresie liniowym pokazującym łączną sprzedaż w każdym miesiącu oraz wykresie słupkowym przedstawiającym łączną sprzedaż w poszczególnych krajach. Warto też dodać statystykę podsumowującą na wysokim poziomie – na przykład informację o tym, który miesiąc miał największy wolumen zamówień.

Twoim zadaniem jest szybkie zbudowanie dashboardu z wykresami Plotly ułożonymi jeden pod drugim.

To ćwiczenie jest częścią kursu

Tworzenie dashboardów z Dash i Plotly

Zobacz kurs

Instrukcje do ćwiczenia

  • Skonfiguruj układ Dash w linii 14.
  • Dodaj zmienną line_fig w linii 17.
  • Dodaj zmienną bar_fig w linii 19.
  • Dodaj tytuł .H3() pokazujący max_country (kraj z najwyższą łączną sprzedażą).

Interaktywne ćwiczenie praktyczne

Spróbuj tego ćwiczenia, uzupełniając ten przykładowy kod.

from dash import Dash, dcc, html
import pandas as pd
import plotly.express as px
ecom_sales = pd.read_csv('/usr/local/share/datasets/ecom_sales.csv')
ecom_line = ecom_sales.groupby('Year-Month')['OrderValue'].agg('sum').reset_index(name='Total Sales ($)')
line_fig = px.line(data_frame=ecom_line, x='Year-Month', y='Total Sales ($)', title='Total Sales by Month')
ecom_bar = ecom_sales.groupby('Country')['OrderValue'].agg('sum').reset_index(name='Total Sales ($)')
max_country = ecom_bar.sort_values(by='Total Sales ($)', ascending=False).loc[0]['Country']
bar_fig = px.bar(data_frame=ecom_bar, x='Total Sales ($)', y='Country', orientation='h', title='Total Sales by Country')

app = Dash()

# Set up the layout
app.____ = [
    html.H1('Sales Figures'), 
    # Add the line figure
    dcc.___(id='my-line-fig', figure=____), 
    # Add the bar figure
    dcc.___(id='my-bar-fig', figure=____), 
    # Add the H3 title
    html.____(f'The largest country by sales was {____}!')
    ]

if __name__ == '__main__':
    app.run(debug=True)
Edytuj i uruchom kod