In [1]:
from plotly.offline import plot, iplot, init_notebook_mode
init_notebook_mode(connected=True)
import plotly.graph_objects as go
In [36]:
menot_dict = {
    "Tavaraostot": 720,
    "Vuokra": 68527.6,
    "Sähkö": 7680,
    "Koneiden korjaus": 600,
    "Datasiirtokulut": 701.64,
    "Rahaliikenteen kulut": 758.88,
    "Ostot": 600,
    "Puu puolen sähköt kuntoon -projekti": 4000
}
tulot_dict = {
    "Myyntitulot": 1800,
    "Jäsenmaksut": 66690,
    "Jäsenpalvelut": 4740,
    "Yleisavustukset": 200
}
In [28]:
menot = list(menot_dict.values())
menot_label = list(menot_dict.keys())
tulot = list(tulot_dict.values())
tulot_label = list(tulot_dict.keys())
In [29]:
liikenne = tulot + menot
nimet = tulot_label +["Liikevaihto"] + menot_label
In [30]:
source = [x if x < len(tulot) + 1 else len(tulot) for x in range(len(liikenne))]
target = [x + 1 if x > len(tulot)- 1 else len(tulot) for x in range(len(liikenne))]
In [32]:
fig = go.Figure(data=[go.Sankey(
    node = dict(
      pad = 20,
      thickness = 20,
      label = nimet,
    ),
    link = dict(
        source = source,
        target = target,
        value = liikenne
  ))])

fig.update_layout(
    title_text="Vuoden budjetti(+Avustukset, -Puupuolen sähköt)",
    font_size=20, 
    autosize=False,
    width=1000,
    height=1000,
    margin=dict(
        l=50,
        r=50,
        b=100,
        t=100,
        pad=4
    ),
    paper_bgcolor="LightSteelBlue",

)
fig.show()
In [37]:
del menot_dict["Puu puolen sähköt kuntoon -projekti"]
del tulot_dict["Yleisavustukset"]
In [34]:
menot = list(menot_dict.values())
menot_label = list(menot_dict.keys())
tulot = list(tulot_dict.values())
tulot_label = list(tulot_dict.keys())
In [38]:
liikenne = tulot + menot
nimet = tulot_label +["Liikevaihto"] + menot_label
source = [x if x < len(tulot) + 1 else len(tulot) for x in range(len(liikenne))]
target = [x + 1 if x > len(tulot)- 1 else len(tulot) for x in range(len(liikenne))]
In [39]:
fig = go.Figure(data=[go.Sankey(
    node = dict(
      pad = 20,
      thickness = 20,
      label = nimet,
    ),
    link = dict(
      source = source, 
      target = target,
      value = liikenne
  ))],
               )

fig.update_layout(
    title_text="Budjetti (ilman ekstroja)",
    font_size=20, 
    autosize=False,
    width=1000,
    height=1000,
    margin=dict(
        l=50,
        r=50,
        b=100,
        t=100,
        pad=4
    ),
    paper_bgcolor="LightSteelBlue",

)
fig.show()
In [ ]: