File size: 1,439 Bytes
b7289c6
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
import streamlit as st
import pandas as pd
import numpy as np
import re

import altair as alt
from session import get_partie_prenante
import os
from streamlit_vertical_slider import vertical_slider

def display_viz():
    st.header("Viz")
    st.title("Visualisation des parties prenantes")
    partie_prenante = get_partie_prenante()
    alphabet = [ pp[0] for pp in partie_prenante]
    pouvoir = [ 50 for _ in range(len(partie_prenante))]
    df = pd.DataFrame({'partie_prenante': partie_prenante, 'pouvoir': pouvoir, 'code couleur': partie_prenante})
    st.write(df)
    c = (
    alt.Chart(df)
    .mark_circle(size=300)
    .encode(x="partie_prenante", y=alt.Y("pouvoir",scale=alt.Scale(domain=[0,100])), color="code couleur")
    )

    number_of_sliders = len(partie_prenante)
    st.write("Modifiez le pouvoir des parties prenantes en utilisant les sliders ci-dessous")
    bar = st.columns(number_of_sliders)
    for i in range(number_of_sliders):
        with bar[i]:
            df["pouvoir"][i] = vertical_slider(
                label=partie_prenante[i],
                height=100,
                key=partie_prenante[i],
                default_value=50,
                thumb_color= "orange", #Optional - Defaults to Streamlit Red
                step=1,
                min_value=0,
                max_value=100,
                value_always_visible=False,
            )
    st.altair_chart(c, use_container_width=True)