Replacement de criticite par ics pour rendre cohérent avec les autres

indices.
This commit is contained in:
Stéphan Peccini 2025-05-16 16:07:59 +02:00
parent 92bfd442c2
commit 5b215e5e5f
7 changed files with 217 additions and 215 deletions

2
.gitignore vendored
View File

@ -6,6 +6,7 @@
__pycache__/
*.pyo
*.pyd
.dot
# Ignorer cache et temporaire
.cache/
@ -19,6 +20,7 @@ venv/
.venv/
Local/
HTML/
Corpus/
# Ignorer données Fiches (adapté à ton projet)
Fiches/

View File

@ -37,14 +37,14 @@ def extraire_niveaux(G):
logging.warning(f"Niveau non entier pour le noeud {node}: {niveau_str}")
return niveaux
def extraire_criticite(G, u, v):
def extraire_ics(G, u, v):
"""Extrait la criticité d'un lien entre deux nœuds"""
data = G.get_edge_data(u, v)
if not data:
return 0
if isinstance(data, dict) and all(isinstance(k, int) for k in data):
return float(data[0].get("criticite", 0))
return float(data.get("criticite", 0))
return float(data[0].get("ics", 0))
return float(data.get("ics", 0))
def extraire_chemins_selon_criteres(G, niveaux, niveau_depart, noeuds_depart, noeuds_arrivee, minerais):
"""Extrait les chemins selon les critères spécifiés"""
@ -102,7 +102,7 @@ def verifier_critere_ics(G, chemin, niveaux):
if ((niveau_u == 1 and niveau_v == 2) or
(niveau_u == 1001 and niveau_v == 1002) or
(niveau_u == 10 and niveau_v in (1000, 1001))) and extraire_criticite(G, u, v) > 0.66:
(niveau_u == 10 and niveau_v in (1000, 1001))) and extraire_ics(G, u, v) > 0.66:
return True
return False
@ -153,7 +153,7 @@ def filtrer_chemins_par_criteres(G, chemins, niveaux, niveau_depart, niveau_arri
# Vérification des critères pour ce chemin
has_ihh = filtrer_ihh and verifier_critere_ihh(G, chemin, niveaux, ihh_type)
has_ivc = filtrer_ivc and verifier_critere_ivc(G, chemin, niveaux)
has_criticite = filtrer_ics and verifier_critere_ics(G, chemin, niveaux)
has_ics = filtrer_ics and verifier_critere_ics(G, chemin, niveaux)
has_isg_critique = filtrer_isg and verifier_critere_isg(G, chemin, niveaux)
# Appliquer la logique de filtrage
@ -161,12 +161,12 @@ def filtrer_chemins_par_criteres(G, chemins, niveaux, niveau_depart, niveau_arri
keep = True
if filtrer_ihh: keep = keep and has_ihh
if filtrer_ivc: keep = keep and has_ivc
if filtrer_ics: keep = keep and has_criticite
if filtrer_ics: keep = keep and has_ics
if filtrer_isg: keep = keep and has_isg_critique
if keep:
chemins_filtres.add(tuple(chemin))
elif logique_filtrage == "OU":
if has_ihh or has_ivc or has_criticite or has_isg_critique:
if has_ihh or has_ivc or has_ics or has_isg_critique:
chemins_filtres.add(tuple(chemin))
# Extraction des liens après filtrage
@ -176,7 +176,7 @@ def filtrer_chemins_par_criteres(G, chemins, niveaux, niveau_depart, niveau_arri
return liens_filtres, chemins_filtres
def couleur_criticite(p):
def couleur_ics(p):
"""Retourne la couleur en fonction du niveau de criticité"""
if p <= 0.33:
return "darkgreen"
@ -206,8 +206,8 @@ def preparer_donnees_sankey(G, liens_chemins, niveaux, chemins):
df_liens = pd.DataFrame(list(liens_chemins), columns=["source", "target"])
df_liens = df_liens.groupby(["source", "target"]).size().reset_index(name="value")
df_liens["criticite"] = df_liens.apply(
lambda row: extraire_criticite(G, row["source"], row["target"]), axis=1)
df_liens["ics"] = df_liens.apply(
lambda row: extraire_ics(G, row["source"], row["target"]), axis=1)
df_liens["value"] = 0.1
# Ne garder que les nœuds effectivement connectés
@ -221,7 +221,7 @@ def preparer_donnees_sankey(G, liens_chemins, niveaux, chemins):
noeuds_utilises.add(n)
df_liens["color"] = df_liens.apply(
lambda row: couleur_criticite(row["criticite"]) if row["criticite"] > 0 else "white",
lambda row: couleur_ics(row["ics"]) if row["ics"] > 0 else "white",
axis=1
)

View File

@ -55,8 +55,8 @@ def afficher_graphique_altair(df):
base = alt.Chart(df_cat).encode(
x=alt.X('ihh_pays:Q', title=str(_("pages.visualisations.axis_titles.ihh_countries"))),
y=alt.Y('ihh_acteurs:Q', title=str(_("pages.visualisations.axis_titles.ihh_actors"))),
size=alt.Size('criticite_cat:Q', scale=alt.Scale(domain=[1, 2, 3], range=[50, 500, 1000]), legend=None),
color=alt.Color('criticite_cat:N', scale=alt.Scale(domain=[1, 2, 3], range=['darkgreen', 'orange', 'darkred']))
size=alt.Size('ics_cat:Q', scale=alt.Scale(domain=[1, 2, 3], range=[50, 500, 1000]), legend=None),
color=alt.Color('ics_cat:N', scale=alt.Scale(domain=[1, 2, 3], range=['darkgreen', 'orange', 'darkred']))
)
points = base.mark_circle(opacity=0.6)
@ -162,7 +162,7 @@ def creer_graphes(donnees):
st.error(f"{str(_('errors.graph_creation_error'))} {e}")
def lancer_visualisation_ihh_criticite(graph):
def lancer_visualisation_ihh_ics(graph):
try:
import networkx as nx
from utils.graph_utils import recuperer_donnees

View File

@ -3,7 +3,7 @@ from utils.widgets import html_expander
from utils.translations import _
from .graphes import (
lancer_visualisation_ihh_criticite,
lancer_visualisation_ihh_ics,
lancer_visualisation_ihh_ivc
)
@ -17,9 +17,9 @@ def interface_visualisations(G_temp, G_temp_ivc):
{str(_("pages.visualisations.ihh_criticality_desc"))}
""")
if st.button(str(_("buttons.run")), key="btn_ihh_criticite"):
if st.button(str(_("buttons.run")), key="btn_ihh_ics"):
try:
lancer_visualisation_ihh_criticite(G_temp)
lancer_visualisation_ihh_ics(G_temp)
except Exception as e:
st.error(f"{str(_('errors.ihh_criticality_error'))} {e}")

View File

@ -1429,21 +1429,21 @@ digraph Hierarchie_Composants_Electroniques_Simplifiee {
Batterie [fillcolor="#b3ffe0", label="Batterie", niveau="1"];
// Relations sortantes
Batterie -> Germanium [cout="0.6", criticite="0.64", delai="0.6", technique="0.7"];
Batterie -> CreusetGraphite [cout="0.5", criticite="0.44", delai="0.3", technique="0.5"];
Batterie -> Germanium [cout="0.6", ics="0.64", delai="0.6", technique="0.7"];
Batterie -> CreusetGraphite [cout="0.5", ics="0.44", delai="0.3", technique="0.5"];
Batterie -> Arsenic [];
Batterie -> Silicium [cout="0.9", criticite="0.9", delai="0.9", technique="0.9"];
Batterie -> Antimoine [cout="0.7", criticite="0.6", delai="0.5", technique="0.6"];
Batterie -> Gallium [cout="0.5", criticite="0.47", delai="0.4", technique="0.5"];
Batterie -> Phosphore [cout="0.6", criticite="0.5", delai="0.4", technique="0.5"];
Batterie -> Nickel [cout="0.4", criticite="0.44", delai="0.4", technique="0.5"];
Batterie -> Silicium [cout="0.9", ics="0.9", delai="0.9", technique="0.9"];
Batterie -> Antimoine [cout="0.7", ics="0.6", delai="0.5", technique="0.6"];
Batterie -> Gallium [cout="0.5", ics="0.47", delai="0.4", technique="0.5"];
Batterie -> Phosphore [cout="0.6", ics="0.5", delai="0.4", technique="0.5"];
Batterie -> Nickel [cout="0.4", ics="0.44", delai="0.4", technique="0.5"];
Batterie -> Fabrication_Batterie [];
Batterie -> Lithium [cout="0.4", criticite="0.51", delai="0.5", technique="0.6"];
Batterie -> Manganese [cout="0.5", criticite="0.4", delai="0.3", technique="0.4"];
Batterie -> Cobalt [cout="0.5", criticite="0.57", delai="0.6", technique="0.6"];
Batterie -> Lanthane [cout="0.5", criticite="0.54", delai="0.5", technique="0.6"];
Batterie -> Graphite [cout="0.4", criticite="0.51", delai="0.5", technique="0.6"];
Batterie -> Zinc [cout="0.4", criticite="0.3", delai="0.2", technique="0.3"];
Batterie -> Lithium [cout="0.4", ics="0.51", delai="0.5", technique="0.6"];
Batterie -> Manganese [cout="0.5", ics="0.4", delai="0.3", technique="0.4"];
Batterie -> Cobalt [cout="0.5", ics="0.57", delai="0.6", technique="0.6"];
Batterie -> Lanthane [cout="0.5", ics="0.54", delai="0.5", technique="0.6"];
Batterie -> Graphite [cout="0.4", ics="0.51", delai="0.5", technique="0.6"];
Batterie -> Zinc [cout="0.4", ics="0.3", delai="0.2", technique="0.3"];
Batterie -> Plomb [];
@ -1460,7 +1460,7 @@ digraph Hierarchie_Composants_Electroniques_Simplifiee {
Fabrication_Batterie -> Pologne_Fabrication_Batterie [color="purple", fontcolor="purple", label="2%", poids="1"];
Fabrication_Batterie -> Chine_Fabrication_Batterie [color="purple", fontcolor="purple", label="54%", poids="2"];
Fabrication_Batterie -> CoreeDuSud_Fabrication_Batterie [color="purple", fontcolor="purple", label="26%", poids="2"];
Fabrication_Batterie -> ProcedeDUV [cout="0.5", criticite="0.29", delai="0.2", technique="0.2"];
Fabrication_Batterie -> ProcedeDUV [cout="0.5", ics="0.29", delai="0.2", technique="0.2"];
subgraph cluster_Japon_Fabrication_Batterie {
label="Japon_Fabrication_Batterie";
@ -1575,19 +1575,19 @@ digraph Hierarchie_Composants_Electroniques_Simplifiee {
Audio [fillcolor="#b3ffe0", label="Audio", niveau="1"];
// Relations sortantes
Audio -> Manganese [cout="0.7", criticite="0.6", delai="0.5", technique="0.6"];
Audio -> Dysprosium [cout="0.7", criticite="0.7", delai="0.7", technique="0.7"];
Audio -> Tungstene [cout="0.6", criticite="0.61", delai="0.5", technique="0.7"];
Audio -> Neodyme [cout="0.4", criticite="0.47", delai="0.5", technique="0.5"];
Audio -> Manganese [cout="0.7", ics="0.6", delai="0.5", technique="0.6"];
Audio -> Dysprosium [cout="0.7", ics="0.7", delai="0.7", technique="0.7"];
Audio -> Tungstene [cout="0.6", ics="0.61", delai="0.5", technique="0.7"];
Audio -> Neodyme [cout="0.4", ics="0.47", delai="0.5", technique="0.5"];
Audio -> Fabrication_Audio [];
Audio -> Praseodyme [cout="0.3", criticite="0.41", delai="0.4", technique="0.5"];
Audio -> Germanium [cout="0.6", criticite="0.64", delai="0.6", technique="0.7"];
Audio -> CreusetGraphite [cout="0.5", criticite="0.44", delai="0.3", technique="0.5"];
Audio -> Praseodyme [cout="0.3", ics="0.41", delai="0.4", technique="0.5"];
Audio -> Germanium [cout="0.6", ics="0.64", delai="0.6", technique="0.7"];
Audio -> CreusetGraphite [cout="0.5", ics="0.44", delai="0.3", technique="0.5"];
Audio -> Arsenic [];
Audio -> Silicium [cout="0.9", criticite="0.9", delai="0.9", technique="0.9"];
Audio -> Antimoine [cout="0.7", criticite="0.6", delai="0.5", technique="0.6"];
Audio -> Gallium [cout="0.5", criticite="0.47", delai="0.4", technique="0.5"];
Audio -> Phosphore [cout="0.6", criticite="0.5", delai="0.4", technique="0.5"];
Audio -> Silicium [cout="0.9", ics="0.9", delai="0.9", technique="0.9"];
Audio -> Antimoine [cout="0.7", ics="0.6", delai="0.5", technique="0.6"];
Audio -> Gallium [cout="0.5", ics="0.47", delai="0.4", technique="0.5"];
Audio -> Phosphore [cout="0.6", ics="0.5", delai="0.4", technique="0.5"];
subgraph cluster_Fabrication_Audio {
label="Fabrication_Audio";
@ -1602,7 +1602,7 @@ digraph Hierarchie_Composants_Electroniques_Simplifiee {
Fabrication_Audio -> CoreeDuSud_Fabrication_Audio [color="purple", fontcolor="purple", label="10%", poids="1"];
Fabrication_Audio -> Chine_Fabrication_Audio [color="purple", fontcolor="purple", label="56%", poids="2"];
Fabrication_Audio -> Taiwan_Fabrication_Audio [color="purple", fontcolor="purple", label="15%", poids="1"];
Fabrication_Audio -> ProcedeDUV [cout="0.5", criticite="0.29", delai="0.2", technique="0.2"];
Fabrication_Audio -> ProcedeDUV [cout="0.5", ics="0.29", delai="0.2", technique="0.2"];
subgraph cluster_EtatsUnis_Fabrication_Audio {
label="EtatsUnis_Fabrication_Audio";
@ -1732,23 +1732,23 @@ digraph Hierarchie_Composants_Electroniques_Simplifiee {
Connecteurs [fillcolor="#b3ffe0", label="Connecteurs", niveau="1"];
// Relations sortantes
Connecteurs -> Cuivre [cout="0.7", criticite="0.81", delai="0.8", technique="0.9"];
Connecteurs -> Beryllium [cout="0.6", criticite="0.64", delai="0.6", technique="0.7"];
Connecteurs -> Argent [cout="0.6", criticite="0.61", delai="0.5", technique="0.7"];
Connecteurs -> Nickel [cout="0.6", criticite="0.5", delai="0.4", technique="0.5"];
Connecteurs -> Cuivre [cout="0.7", ics="0.81", delai="0.8", technique="0.9"];
Connecteurs -> Beryllium [cout="0.6", ics="0.64", delai="0.6", technique="0.7"];
Connecteurs -> Argent [cout="0.6", ics="0.61", delai="0.5", technique="0.7"];
Connecteurs -> Nickel [cout="0.6", ics="0.5", delai="0.4", technique="0.5"];
Connecteurs -> Fabrication_Connecteurs [];
Connecteurs -> Aluminium [];
Connecteurs -> Palladium [cout="0.6", criticite="0.5", delai="0.4", technique="0.5"];
Connecteurs -> Or [cout="0.6", criticite="0.64", delai="0.6", technique="0.7"];
Connecteurs -> Palladium [cout="0.6", ics="0.5", delai="0.4", technique="0.5"];
Connecteurs -> Or [cout="0.6", ics="0.64", delai="0.6", technique="0.7"];
Connecteurs -> Plomb [];
Connecteurs -> Etain [cout="0.6", criticite="0.6", delai="0.6", technique="0.6"];
Connecteurs -> Germanium [cout="0.6", criticite="0.64", delai="0.6", technique="0.7"];
Connecteurs -> CreusetGraphite [cout="0.5", criticite="0.44", delai="0.3", technique="0.5"];
Connecteurs -> Etain [cout="0.6", ics="0.6", delai="0.6", technique="0.6"];
Connecteurs -> Germanium [cout="0.6", ics="0.64", delai="0.6", technique="0.7"];
Connecteurs -> CreusetGraphite [cout="0.5", ics="0.44", delai="0.3", technique="0.5"];
Connecteurs -> Arsenic [];
Connecteurs -> Silicium [cout="0.9", criticite="0.9", delai="0.9", technique="0.9"];
Connecteurs -> Antimoine [cout="0.7", criticite="0.6", delai="0.5", technique="0.6"];
Connecteurs -> Gallium [cout="0.5", criticite="0.47", delai="0.4", technique="0.5"];
Connecteurs -> Phosphore [cout="0.6", criticite="0.5", delai="0.4", technique="0.5"];
Connecteurs -> Silicium [cout="0.9", ics="0.9", delai="0.9", technique="0.9"];
Connecteurs -> Antimoine [cout="0.7", ics="0.6", delai="0.5", technique="0.6"];
Connecteurs -> Gallium [cout="0.5", ics="0.47", delai="0.4", technique="0.5"];
Connecteurs -> Phosphore [cout="0.6", ics="0.5", delai="0.4", technique="0.5"];
subgraph cluster_Fabrication_Connecteurs {
@ -1765,7 +1765,7 @@ digraph Hierarchie_Composants_Electroniques_Simplifiee {
Fabrication_Connecteurs -> CoreeDuSud_Fabrication_Connecteurs [color="purple", fontcolor="purple", label="5%", poids="1"];
Fabrication_Connecteurs -> Japon_Fabrication_Connecteurs [color="purple", fontcolor="purple", label="14%", poids="1"];
Fabrication_Connecteurs -> Allemagne_Fabrication_Connecteurs [color="purple", fontcolor="purple", label="7%", poids="1"];
Fabrication_Connecteurs -> ProcedeDUV [cout="0.5", criticite="0.29", delai="0.2", technique="0.2"];
Fabrication_Connecteurs -> ProcedeDUV [cout="0.5", ics="0.29", delai="0.2", technique="0.2"];
subgraph cluster_EtatsUnis_Fabrication_Connecteurs {
label="EtatsUnis_Fabrication_Connecteurs";
@ -1898,19 +1898,19 @@ digraph Hierarchie_Composants_Electroniques_Simplifiee {
Camera [fillcolor="#b3ffe0", label="Caméra", niveau="1"];
// Relations sortantes
Camera -> Cerium [cout="0.6", criticite="0.71", delai="0.7", technique="0.8"];
Camera -> Lanthane [cout="0.6", criticite="0.64", delai="0.6", technique="0.7"];
Camera -> Holmium [cout="0.8", criticite="0.84", delai="0.8", technique="0.9"];
Camera -> Cerium [cout="0.6", ics="0.71", delai="0.7", technique="0.8"];
Camera -> Lanthane [cout="0.6", ics="0.64", delai="0.6", technique="0.7"];
Camera -> Holmium [cout="0.8", ics="0.84", delai="0.8", technique="0.9"];
Camera -> Fabrication_Camera [];
Camera -> Platine [cout="0.6", criticite="0.71", delai="0.7", technique="0.8"];
Camera -> Platine [cout="0.6", ics="0.71", delai="0.7", technique="0.8"];
Camera -> Verre [];
Camera -> Germanium [cout="0.6", criticite="0.64", delai="0.6", technique="0.7"];
Camera -> CreusetGraphite [cout="0.5", criticite="0.44", delai="0.3", technique="0.5"];
Camera -> Germanium [cout="0.6", ics="0.64", delai="0.6", technique="0.7"];
Camera -> CreusetGraphite [cout="0.5", ics="0.44", delai="0.3", technique="0.5"];
Camera -> Arsenic [];
Camera -> Silicium [cout="0.9", criticite="0.9", delai="0.9", technique="0.9"];
Camera -> Antimoine [cout="0.7", criticite="0.6", delai="0.5", technique="0.6"];
Camera -> Gallium [cout="0.5", criticite="0.47", delai="0.4", technique="0.5"];
Camera -> Phosphore [cout="0.6", criticite="0.5", delai="0.4", technique="0.5"];
Camera -> Silicium [cout="0.9", ics="0.9", delai="0.9", technique="0.9"];
Camera -> Antimoine [cout="0.7", ics="0.6", delai="0.5", technique="0.6"];
Camera -> Gallium [cout="0.5", ics="0.47", delai="0.4", technique="0.5"];
Camera -> Phosphore [cout="0.6", ics="0.5", delai="0.4", technique="0.5"];
subgraph cluster_Fabrication_Camera {
@ -1927,7 +1927,7 @@ digraph Hierarchie_Composants_Electroniques_Simplifiee {
Fabrication_Camera -> CoreeDuSud_Fabrication_Camera [color="purple", fontcolor="purple", label="18%", poids="1"];
Fabrication_Camera -> Allemagne_Fabrication_Camera [color="purple", fontcolor="purple", label="3%", poids="1"];
Fabrication_Camera -> Taiwan_Fabrication_Camera [color="purple", fontcolor="purple", label="10%", poids="1"];
Fabrication_Camera -> ProcedeDUV [cout="0.5", criticite="0.29", delai="0.2", technique="0.2"];
Fabrication_Camera -> ProcedeDUV [cout="0.5", ics="0.29", delai="0.2", technique="0.2"];
subgraph cluster_Chine_Fabrication_Camera {
label="Chine_Fabrication_Camera";
@ -2061,16 +2061,16 @@ digraph Hierarchie_Composants_Electroniques_Simplifiee {
// Relations sortantes
Boitier -> Polystyrene [];
Boitier -> Zinc [cout="0.4", criticite="0.3", delai="0.2", technique="0.3"];
Boitier -> Zinc [cout="0.4", ics="0.3", delai="0.2", technique="0.3"];
Boitier -> Fabrication_Boitier [];
Boitier -> Acier [];
Boitier -> Titane [cout="0.7", criticite="0.67", delai="0.6", technique="0.7"];
Boitier -> Chrome [cout="0.5", criticite="0.39", delai="0.4", technique="0.3"];
Boitier -> Titane [cout="0.7", ics="0.67", delai="0.6", technique="0.7"];
Boitier -> Chrome [cout="0.5", ics="0.39", delai="0.4", technique="0.3"];
Boitier -> Plastiques [];
Boitier -> Aluminium [];
Boitier -> Manganese [cout="0.5", criticite="0.4", delai="0.3", technique="0.4"];
Boitier -> Manganese [cout="0.5", ics="0.4", delai="0.3", technique="0.4"];
Boitier -> PVC [];
Boitier -> Magnesium [cout="0.6", criticite="0.5", delai="0.4", technique="0.5"];
Boitier -> Magnesium [cout="0.6", ics="0.5", delai="0.4", technique="0.5"];
Boitier -> PET [];
@ -2216,15 +2216,15 @@ digraph Hierarchie_Composants_Electroniques_Simplifiee {
// Relations sortantes
EcranOLED -> IndiumEtain [];
EcranOLED -> Fabrication_EcranOLED [];
EcranOLED -> Cerium [cout="0.6", criticite="0.64", delai="0.6", technique="0.7"];
EcranOLED -> Yttrium [cout="0.7", criticite="0.7", delai="0.7", technique="0.7"];
EcranOLED -> Cerium [cout="0.6", ics="0.64", delai="0.6", technique="0.7"];
EcranOLED -> Yttrium [cout="0.7", ics="0.7", delai="0.7", technique="0.7"];
EcranOLED -> PET [];
EcranOLED -> Aluminium [cout="0.5", criticite="0.4", delai="0.3", technique="0.4"];
EcranOLED -> Aluminium [cout="0.5", ics="0.4", delai="0.3", technique="0.4"];
EcranOLED -> Verre [];
EcranOLED -> Plastiques [];
EcranOLED -> Arsenic [];
EcranOLED -> Gallium [cout="0.3", criticite="0.41", delai="0.4", technique="0.5"];
EcranOLED -> CreusetGraphite [cout="0.5", criticite="0.44", delai="0.3", technique="0.5"];
EcranOLED -> Gallium [cout="0.3", ics="0.41", delai="0.4", technique="0.5"];
EcranOLED -> CreusetGraphite [cout="0.5", ics="0.44", delai="0.3", technique="0.5"];
subgraph cluster_Fabrication_EcranOLED {
@ -2241,7 +2241,7 @@ digraph Hierarchie_Composants_Electroniques_Simplifiee {
Fabrication_EcranOLED -> EtatsUnis_Fabrication_EcranOLED [color="purple", fontcolor="purple", label="2%", poids="1"];
Fabrication_EcranOLED -> CoreeDuSud_Fabrication_EcranOLED [color="purple", fontcolor="purple", label="54%", poids="2"];
Fabrication_EcranOLED -> Chine_Fabrication_EcranOLED [color="purple", fontcolor="purple", label="28%", poids="2"];
Fabrication_EcranOLED -> ProcedeDUV [cout="0.5", criticite="0.29", delai="0.2", technique="0.2"];
Fabrication_EcranOLED -> ProcedeDUV [cout="0.5", ics="0.29", delai="0.2", technique="0.2"];
subgraph cluster_Taiwan_Fabrication_EcranOLED {
label="Taiwan_Fabrication_EcranOLED";
@ -2374,17 +2374,17 @@ digraph Hierarchie_Composants_Electroniques_Simplifiee {
EcranMiniLED [fillcolor="#b3ffe0", label="Écran Mini et Micro LED", niveau="1"];
// Relations sortantes
EcranMiniLED -> Aluminium [cout="0.6", criticite="0.5", delai="0.4", technique="0.5"];
EcranMiniLED -> Terbium [cout="0.7", criticite="0.81", delai="0.8", technique="0.9"];
EcranMiniLED -> Europium [cout="0.7", criticite="0.81", delai="0.8", technique="0.9"];
EcranMiniLED -> Yttrium [cout="0.7", criticite="0.74", delai="0.7", technique="0.8"];
EcranMiniLED -> Aluminium [cout="0.6", ics="0.5", delai="0.4", technique="0.5"];
EcranMiniLED -> Terbium [cout="0.7", ics="0.81", delai="0.8", technique="0.9"];
EcranMiniLED -> Europium [cout="0.7", ics="0.81", delai="0.8", technique="0.9"];
EcranMiniLED -> Yttrium [cout="0.7", ics="0.74", delai="0.7", technique="0.8"];
EcranMiniLED -> Fabrication_EcranMiniLED [];
EcranMiniLED -> Plastiques [];
EcranMiniLED -> Verre [];
EcranMiniLED -> IndiumEtain [];
EcranMiniLED -> Arsenic [];
EcranMiniLED -> Gallium [cout="0.3", criticite="0.41", delai="0.4", technique="0.5"];
EcranMiniLED -> CreusetGraphite [cout="0.5", criticite="0.44", delai="0.3", technique="0.5"];
EcranMiniLED -> Gallium [cout="0.3", ics="0.41", delai="0.4", technique="0.5"];
EcranMiniLED -> CreusetGraphite [cout="0.5", ics="0.44", delai="0.3", technique="0.5"];
subgraph cluster_Fabrication_EcranMiniLED {
@ -2401,7 +2401,7 @@ digraph Hierarchie_Composants_Electroniques_Simplifiee {
Fabrication_EcranMiniLED -> Japon_Fabrication_EcranMiniLED [color="purple", fontcolor="purple", label="9%", poids="1"];
Fabrication_EcranMiniLED -> Allemagne_Fabrication_EcranMiniLED [color="purple", fontcolor="purple", label="4%", poids="1"];
Fabrication_EcranMiniLED -> CoreeDuSud_Fabrication_EcranMiniLED [color="purple", fontcolor="purple", label="25%", poids="1"];
Fabrication_EcranMiniLED -> ProcedeDUV [cout="0.5", criticite="0.29", delai="0.2", technique="0.2"];
Fabrication_EcranMiniLED -> ProcedeDUV [cout="0.5", ics="0.29", delai="0.2", technique="0.2"];
subgraph cluster_Taiwan_Fabrication_EcranMiniLED {
label="Taiwan_Fabrication_EcranMiniLED";
@ -2534,18 +2534,18 @@ digraph Hierarchie_Composants_Electroniques_Simplifiee {
Connectivite [fillcolor="#b3ffe0", label="Connectivité", niveau="1"];
// Relations sortantes
Connectivite -> Aluminium [cout="0.5", criticite="0.47", delai="0.4", technique="0.5"];
Connectivite -> Aluminium [cout="0.5", ics="0.47", delai="0.4", technique="0.5"];
Connectivite -> Fabrication_Connectivite [];
Connectivite -> Samarium [cout="0.6", criticite="0.64", delai="0.6", technique="0.7"];
Connectivite -> Beryllium [cout="0.6", criticite="0.64", delai="0.6", technique="0.7"];
Connectivite -> Erbium [cout="0.7", criticite="0.74", delai="0.7", technique="0.8"];
Connectivite -> Germanium [cout="0.6", criticite="0.64", delai="0.6", technique="0.7"];
Connectivite -> CreusetGraphite [cout="0.5", criticite="0.44", delai="0.3", technique="0.5"];
Connectivite -> Samarium [cout="0.6", ics="0.64", delai="0.6", technique="0.7"];
Connectivite -> Beryllium [cout="0.6", ics="0.64", delai="0.6", technique="0.7"];
Connectivite -> Erbium [cout="0.7", ics="0.74", delai="0.7", technique="0.8"];
Connectivite -> Germanium [cout="0.6", ics="0.64", delai="0.6", technique="0.7"];
Connectivite -> CreusetGraphite [cout="0.5", ics="0.44", delai="0.3", technique="0.5"];
Connectivite -> Arsenic [];
Connectivite -> Silicium [cout="0.9", criticite="0.9", delai="0.9", technique="0.9"];
Connectivite -> Antimoine [cout="0.7", criticite="0.6", delai="0.5", technique="0.6"];
Connectivite -> Gallium [cout="0.5", criticite="0.47", delai="0.4", technique="0.5"];
Connectivite -> Phosphore [cout="0.6", criticite="0.5", delai="0.4", technique="0.5"];
Connectivite -> Silicium [cout="0.9", ics="0.9", delai="0.9", technique="0.9"];
Connectivite -> Antimoine [cout="0.7", ics="0.6", delai="0.5", technique="0.6"];
Connectivite -> Gallium [cout="0.5", ics="0.47", delai="0.4", technique="0.5"];
Connectivite -> Phosphore [cout="0.6", ics="0.5", delai="0.4", technique="0.5"];
subgraph cluster_Fabrication_Connectivite {
@ -2562,7 +2562,7 @@ digraph Hierarchie_Composants_Electroniques_Simplifiee {
Fabrication_Connectivite -> CoreeDuSud_Fabrication_Connectivite [color="purple", fontcolor="purple", label="11%", poids="1"];
Fabrication_Connectivite -> PaysBas_Fabrication_Connectivite [color="purple", fontcolor="purple", label="3%", poids="1"];
Fabrication_Connectivite -> EtatsUnis_Fabrication_Connectivite [color="purple", fontcolor="purple", label="24%", poids="1"];
Fabrication_Connectivite -> ProcedeDUV [cout="0.5", criticite="0.29", delai="0.2", technique="0.2"];
Fabrication_Connectivite -> ProcedeDUV [cout="0.5", ics="0.29", delai="0.2", technique="0.2"];
subgraph cluster_Israel_Fabrication_Connectivite {
label="Israel_Fabrication_Connectivite";
@ -2692,19 +2692,19 @@ digraph Hierarchie_Composants_Electroniques_Simplifiee {
Capteurs [fillcolor="#b3ffe0", label="Capteurs", niveau="1"];
// Relations sortantes
Capteurs -> Samarium [cout="0.7", criticite="0.74", delai="0.7", technique="0.8"];
Capteurs -> Platine [cout="0.7", criticite="0.7", delai="0.7", technique="0.7"];
Capteurs -> Holmium [cout="0.8", criticite="0.84", delai="0.8", technique="0.9"];
Capteurs -> Manganese [cout="0.6", criticite="0.5", delai="0.4", technique="0.5"];
Capteurs -> Gadolinium [cout="0.7", criticite="0.74", delai="0.7", technique="0.8"];
Capteurs -> Samarium [cout="0.7", ics="0.74", delai="0.7", technique="0.8"];
Capteurs -> Platine [cout="0.7", ics="0.7", delai="0.7", technique="0.7"];
Capteurs -> Holmium [cout="0.8", ics="0.84", delai="0.8", technique="0.9"];
Capteurs -> Manganese [cout="0.6", ics="0.5", delai="0.4", technique="0.5"];
Capteurs -> Gadolinium [cout="0.7", ics="0.74", delai="0.7", technique="0.8"];
Capteurs -> Fabrication_Capteurs [];
Capteurs -> Germanium [cout="0.6", criticite="0.64", delai="0.6", technique="0.7"];
Capteurs -> CreusetGraphite [cout="0.5", criticite="0.44", delai="0.3", technique="0.5"];
Capteurs -> Germanium [cout="0.6", ics="0.64", delai="0.6", technique="0.7"];
Capteurs -> CreusetGraphite [cout="0.5", ics="0.44", delai="0.3", technique="0.5"];
Capteurs -> Arsenic [];
Capteurs -> Silicium [cout="0.9", criticite="0.9", delai="0.9", technique="0.9"];
Capteurs -> Antimoine [cout="0.7", criticite="0.6", delai="0.5", technique="0.6"];
Capteurs -> Gallium [cout="0.5", criticite="0.47", delai="0.4", technique="0.5"];
Capteurs -> Phosphore [cout="0.6", criticite="0.5", delai="0.4", technique="0.5"];
Capteurs -> Silicium [cout="0.9", ics="0.9", delai="0.9", technique="0.9"];
Capteurs -> Antimoine [cout="0.7", ics="0.6", delai="0.5", technique="0.6"];
Capteurs -> Gallium [cout="0.5", ics="0.47", delai="0.4", technique="0.5"];
Capteurs -> Phosphore [cout="0.6", ics="0.5", delai="0.4", technique="0.5"];
subgraph cluster_Fabrication_Capteurs {
@ -2722,7 +2722,7 @@ digraph Hierarchie_Composants_Electroniques_Simplifiee {
Fabrication_Capteurs -> Taiwan_Fabrication_Capteurs [color="purple", fontcolor="purple", label="7%", poids="1"];
Fabrication_Capteurs -> Japon_Fabrication_Capteurs [color="purple", fontcolor="purple", label="26%", poids="2"];
Fabrication_Capteurs -> Suisse_Fabrication_Capteurs [color="purple", fontcolor="purple", label="2%", poids="1"];
Fabrication_Capteurs -> ProcedeDUV [cout="0.5", criticite="0.29", delai="0.2", technique="0.2"];
Fabrication_Capteurs -> ProcedeDUV [cout="0.5", ics="0.29", delai="0.2", technique="0.2"];
subgraph cluster_CoreeDuSud_Fabrication_Capteurs {
label="CoreeDuSud_Fabrication_Capteurs";
@ -2867,21 +2867,21 @@ digraph Hierarchie_Composants_Electroniques_Simplifiee {
CarteMere [fillcolor="#b3ffe0", label="Carte mère", niveau="1"];
// Relations sortantes
CarteMere -> Argent [cout="0.6", criticite="0.61", delai="0.5", technique="0.7"];
CarteMere -> Argent [cout="0.6", ics="0.61", delai="0.5", technique="0.7"];
CarteMere -> PVC [];
CarteMere -> Ceramiques [];
CarteMere -> Cuivre [cout="0.7", criticite="0.81", delai="0.8", technique="0.9"];
CarteMere -> Etain [cout="0.6", criticite="0.6", delai="0.6", technique="0.6"];
CarteMere -> Aluminium [cout="0.6", criticite="0.43", delai="0.3", technique="0.4"];
CarteMere -> Cuivre [cout="0.7", ics="0.81", delai="0.8", technique="0.9"];
CarteMere -> Etain [cout="0.6", ics="0.6", delai="0.6", technique="0.6"];
CarteMere -> Aluminium [cout="0.6", ics="0.43", delai="0.3", technique="0.4"];
CarteMere -> Fabrication_CarteMere [];
CarteMere -> Tantale [cout="0.6", criticite="0.7", delai="0.8", technique="0.7"];
CarteMere -> Palladium [cout="0.6", criticite="0.5", delai="0.4", technique="0.5"];
CarteMere -> Antimoine [cout="0.7", criticite="0.6", delai="0.5", technique="0.6"];
CarteMere -> Silicium [cout="0.9", criticite="0.9", delai="0.9", technique="0.9"];
CarteMere -> CreusetQuartz [cout="0.7", criticite="0.74", delai="0.7", technique="0.8"];
CarteMere -> Germanium [cout="0.6", criticite="0.64", delai="0.6", technique="0.7"];
CarteMere -> Hafnium [cout="0.7", criticite="0.81", delai="0.8", technique="0.9"];
CarteMere -> Phosphore [cout="0.6", criticite="0.5", delai="0.4", technique="0.5"];
CarteMere -> Tantale [cout="0.6", ics="0.7", delai="0.8", technique="0.7"];
CarteMere -> Palladium [cout="0.6", ics="0.5", delai="0.4", technique="0.5"];
CarteMere -> Antimoine [cout="0.7", ics="0.6", delai="0.5", technique="0.6"];
CarteMere -> Silicium [cout="0.9", ics="0.9", delai="0.9", technique="0.9"];
CarteMere -> CreusetQuartz [cout="0.7", ics="0.74", delai="0.7", technique="0.8"];
CarteMere -> Germanium [cout="0.6", ics="0.64", delai="0.6", technique="0.7"];
CarteMere -> Hafnium [cout="0.7", ics="0.81", delai="0.8", technique="0.9"];
CarteMere -> Phosphore [cout="0.6", ics="0.5", delai="0.4", technique="0.5"];
subgraph cluster_Fabrication_CarteMere {
@ -2898,8 +2898,8 @@ digraph Hierarchie_Composants_Electroniques_Simplifiee {
Fabrication_CarteMere -> Taiwan_Fabrication_CarteMere [color="purple", fontcolor="purple", label="28%", poids="2"];
Fabrication_CarteMere -> Chine_Fabrication_CarteMere [color="purple", fontcolor="purple", label="43%", poids="2"];
Fabrication_CarteMere -> EtatsUnis_Fabrication_CarteMere [color="purple", fontcolor="purple", label="2%", poids="1"];
Fabrication_CarteMere -> ProcedeDUV [cout="0.5", criticite="0.29", delai="0.2", technique="0.2"];
Fabrication_CarteMere -> ProcedeEUV [cout="1.0", criticite="1.0", delai="1.0", technique="1.0"];
Fabrication_CarteMere -> ProcedeDUV [cout="0.5", ics="0.29", delai="0.2", technique="0.2"];
Fabrication_CarteMere -> ProcedeEUV [cout="1.0", ics="1.0", delai="1.0", technique="1.0"];
subgraph cluster_Thailande_Fabrication_CarteMere {
label="Thailande_Fabrication_CarteMere";
@ -3036,17 +3036,17 @@ digraph Hierarchie_Composants_Electroniques_Simplifiee {
// Relations sortantes
EcranLCD -> Fabrication_EcranLCD [];
EcranLCD -> Cerium [cout="0.7", criticite="0.7", delai="0.7", technique="0.7"];
EcranLCD -> Cerium [cout="0.7", ics="0.7", delai="0.7", technique="0.7"];
EcranLCD -> PET [];
EcranLCD -> Verre [];
EcranLCD -> Terbium [cout="0.7", criticite="0.81", delai="0.8", technique="0.9"];
EcranLCD -> Europium [cout="0.7", criticite="0.81", delai="0.8", technique="0.9"];
EcranLCD -> Terbium [cout="0.7", ics="0.81", delai="0.8", technique="0.9"];
EcranLCD -> Europium [cout="0.7", ics="0.81", delai="0.8", technique="0.9"];
EcranLCD -> Plastiques [];
EcranLCD -> IndiumEtain [];
EcranLCD -> Aluminium [cout="0.4", criticite="0.3", delai="0.2", technique="0.3"];
EcranLCD -> Aluminium [cout="0.4", ics="0.3", delai="0.2", technique="0.3"];
EcranLCD -> Arsenic [];
EcranLCD -> Gallium [cout="0.3", criticite="0.41", delai="0.4", technique="0.5"];
EcranLCD -> CreusetGraphite [cout="0.5", criticite="0.44", delai="0.3", technique="0.5"];
EcranLCD -> Gallium [cout="0.3", ics="0.41", delai="0.4", technique="0.5"];
EcranLCD -> CreusetGraphite [cout="0.5", ics="0.44", delai="0.3", technique="0.5"];
subgraph cluster_Fabrication_EcranLCD {
@ -3063,7 +3063,7 @@ digraph Hierarchie_Composants_Electroniques_Simplifiee {
Fabrication_EcranLCD -> Mexique_Fabrication_EcranLCD [color="purple", fontcolor="purple", label="3%", poids="1"];
Fabrication_EcranLCD -> Vietnam_Fabrication_EcranLCD [color="purple", fontcolor="purple", label="2%", poids="1"];
Fabrication_EcranLCD -> Taiwan_Fabrication_EcranLCD [color="purple", fontcolor="purple", label="17%", poids="1"];
Fabrication_EcranLCD -> ProcedeDUV [cout="0.5", criticite="0.29", delai="0.2", technique="0.2"];
Fabrication_EcranLCD -> ProcedeDUV [cout="0.5", ics="0.29", delai="0.2", technique="0.2"];
subgraph cluster_Pologne_Fabrication_EcranLCD {
label="Pologne_Fabrication_EcranLCD";
@ -3193,12 +3193,12 @@ digraph Hierarchie_Composants_Electroniques_Simplifiee {
MemoireRAM [fillcolor="#b3ffe0", label="Mémoire RAM", niveau="1"];
// Relations sortantes
MemoireRAM -> Tantale [cout="0.6", criticite="0.71", delai="0.7", technique="0.8"];
MemoireRAM -> Aluminium [cout="0.5", criticite="0.33", delai="0.2", technique="0.3"];
MemoireRAM -> Tantale [cout="0.6", ics="0.71", delai="0.7", technique="0.8"];
MemoireRAM -> Aluminium [cout="0.5", ics="0.33", delai="0.2", technique="0.3"];
MemoireRAM -> Fabrication_MemoireRAM [];
MemoireRAM -> CreusetQuartz [cout="0.7", criticite="0.74", delai="0.7", technique="0.8"];
MemoireRAM -> Hafnium [cout="0.8", criticite="0.8", delai="0.8", technique="0.8"];
MemoireRAM -> Silicium [cout="0.9", criticite="0.9", delai="0.9", technique="0.9"];
MemoireRAM -> CreusetQuartz [cout="0.7", ics="0.74", delai="0.7", technique="0.8"];
MemoireRAM -> Hafnium [cout="0.8", ics="0.8", delai="0.8", technique="0.8"];
MemoireRAM -> Silicium [cout="0.9", ics="0.9", delai="0.9", technique="0.9"];
subgraph cluster_Fabrication_MemoireRAM {
@ -3211,7 +3211,7 @@ digraph Hierarchie_Composants_Electroniques_Simplifiee {
Fabrication_MemoireRAM -> EtatsUnis_Fabrication_MemoireRAM [color="purple", fontcolor="purple", label="23%", poids="1"];
Fabrication_MemoireRAM -> CoreeDuSud_Fabrication_MemoireRAM [color="purple", fontcolor="purple", label="71%", poids="2"];
Fabrication_MemoireRAM -> Taiwan_Fabrication_MemoireRAM [color="purple", fontcolor="purple", label="3%", poids="1"];
Fabrication_MemoireRAM -> ProcedeDUV [cout="0.5", criticite="0.29", delai="0.2", technique="0.2"];
Fabrication_MemoireRAM -> ProcedeDUV [cout="0.5", ics="0.29", delai="0.2", technique="0.2"];
subgraph cluster_EtatsUnis_Fabrication_MemoireRAM {
label="EtatsUnis_Fabrication_MemoireRAM";
@ -3273,17 +3273,17 @@ digraph Hierarchie_Composants_Electroniques_Simplifiee {
// Relations sortantes
ProcesseurASIC -> Ceramiques [];
ProcesseurASIC -> Tungstene [cout="0.7", criticite="0.6", delai="0.5", technique="0.6"];
ProcesseurASIC -> Tungstene [cout="0.7", ics="0.6", delai="0.5", technique="0.6"];
ProcesseurASIC -> Fabrication_ProcesseurASIC [];
ProcesseurASIC -> Or [cout="0.6", criticite="0.6", delai="0.6", technique="0.6"];
ProcesseurASIC -> Scandium [cout="0.7", criticite="0.7", delai="0.7", technique="0.7"];
ProcesseurASIC -> Hafnium [cout="0.8", criticite="0.84", delai="0.8", technique="0.9"];
ProcesseurASIC -> Aluminium [cout="0.5", criticite="0.47", delai="0.4", technique="0.5"];
ProcesseurASIC -> Antimoine [cout="0.7", criticite="0.6", delai="0.5", technique="0.6"];
ProcesseurASIC -> Silicium [cout="0.9", criticite="0.9", delai="0.9", technique="0.9"];
ProcesseurASIC -> CreusetQuartz [cout="0.7", criticite="0.74", delai="0.7", technique="0.8"];
ProcesseurASIC -> Germanium [cout="0.6", criticite="0.64", delai="0.6", technique="0.7"];
ProcesseurASIC -> Phosphore [cout="0.6", criticite="0.5", delai="0.4", technique="0.5"];
ProcesseurASIC -> Or [cout="0.6", ics="0.6", delai="0.6", technique="0.6"];
ProcesseurASIC -> Scandium [cout="0.7", ics="0.7", delai="0.7", technique="0.7"];
ProcesseurASIC -> Hafnium [cout="0.8", ics="0.84", delai="0.8", technique="0.9"];
ProcesseurASIC -> Aluminium [cout="0.5", ics="0.47", delai="0.4", technique="0.5"];
ProcesseurASIC -> Antimoine [cout="0.7", ics="0.6", delai="0.5", technique="0.6"];
ProcesseurASIC -> Silicium [cout="0.9", ics="0.9", delai="0.9", technique="0.9"];
ProcesseurASIC -> CreusetQuartz [cout="0.7", ics="0.74", delai="0.7", technique="0.8"];
ProcesseurASIC -> Germanium [cout="0.6", ics="0.64", delai="0.6", technique="0.7"];
ProcesseurASIC -> Phosphore [cout="0.6", ics="0.5", delai="0.4", technique="0.5"];
subgraph cluster_Fabrication_ProcesseurASIC {
@ -3300,8 +3300,8 @@ digraph Hierarchie_Composants_Electroniques_Simplifiee {
Fabrication_ProcesseurASIC -> CoreeDuSud_Fabrication_ProcesseurASIC [color="purple", fontcolor="purple", label="20%", poids="1"];
Fabrication_ProcesseurASIC -> Israel_Fabrication_ProcesseurASIC [color="purple", fontcolor="purple", label="4%", poids="1"];
Fabrication_ProcesseurASIC -> Allemagne_Fabrication_ProcesseurASIC [color="purple", fontcolor="purple", label="3%", poids="1"];
Fabrication_ProcesseurASIC -> ProcedeDUV [cout="0.5", criticite="0.29", delai="0.2", technique="0.2"];
Fabrication_ProcesseurASIC -> ProcedeEUV [cout="1.0", criticite="1.0", delai="1.0", technique="1.0"];
Fabrication_ProcesseurASIC -> ProcedeDUV [cout="0.5", ics="0.29", delai="0.2", technique="0.2"];
Fabrication_ProcesseurASIC -> ProcedeEUV [cout="1.0", ics="1.0", delai="1.0", technique="1.0"];
subgraph cluster_EtatsUnis_Fabrication_ProcesseurASIC {
label="EtatsUnis_Fabrication_ProcesseurASIC";
@ -3416,19 +3416,19 @@ digraph Hierarchie_Composants_Electroniques_Simplifiee {
ProcesseurARM [fillcolor="#b3ffe0", label="Processeur ARM", niveau="1"];
// Relations sortantes
ProcesseurARM -> Tungstene [cout="0.7", criticite="0.6", delai="0.5", technique="0.6"];
ProcesseurARM -> Tungstene [cout="0.7", ics="0.6", delai="0.5", technique="0.6"];
ProcesseurARM -> Ceramiques [];
ProcesseurARM -> Or [cout="0.6", criticite="0.6", delai="0.6", technique="0.6"];
ProcesseurARM -> Scandium [cout="0.7", criticite="0.7", delai="0.7", technique="0.7"];
ProcesseurARM -> Palladium [cout="0.6", criticite="0.5", delai="0.4", technique="0.5"];
ProcesseurARM -> Hafnium [cout="0.8", criticite="0.8", delai="0.8", technique="0.8"];
ProcesseurARM -> Or [cout="0.6", ics="0.6", delai="0.6", technique="0.6"];
ProcesseurARM -> Scandium [cout="0.7", ics="0.7", delai="0.7", technique="0.7"];
ProcesseurARM -> Palladium [cout="0.6", ics="0.5", delai="0.4", technique="0.5"];
ProcesseurARM -> Hafnium [cout="0.8", ics="0.8", delai="0.8", technique="0.8"];
ProcesseurARM -> Fabrication_ProcesseurARM [];
ProcesseurARM -> Aluminium [cout="0.5", criticite="0.47", delai="0.4", technique="0.5"];
ProcesseurARM -> Antimoine [cout="0.7", criticite="0.6", delai="0.5", technique="0.6"];
ProcesseurARM -> Silicium [cout="0.9", criticite="0.9", delai="0.9", technique="0.9"];
ProcesseurARM -> CreusetQuartz [cout="0.7", criticite="0.74", delai="0.7", technique="0.8"];
ProcesseurARM -> Germanium [cout="0.6", criticite="0.64", delai="0.6", technique="0.7"];
ProcesseurARM -> Phosphore [cout="0.6", criticite="0.5", delai="0.4", technique="0.5"];
ProcesseurARM -> Aluminium [cout="0.5", ics="0.47", delai="0.4", technique="0.5"];
ProcesseurARM -> Antimoine [cout="0.7", ics="0.6", delai="0.5", technique="0.6"];
ProcesseurARM -> Silicium [cout="0.9", ics="0.9", delai="0.9", technique="0.9"];
ProcesseurARM -> CreusetQuartz [cout="0.7", ics="0.74", delai="0.7", technique="0.8"];
ProcesseurARM -> Germanium [cout="0.6", ics="0.64", delai="0.6", technique="0.7"];
ProcesseurARM -> Phosphore [cout="0.6", ics="0.5", delai="0.4", technique="0.5"];
subgraph cluster_Fabrication_ProcesseurARM {
@ -3443,8 +3443,8 @@ digraph Hierarchie_Composants_Electroniques_Simplifiee {
Fabrication_ProcesseurARM -> EtatsUnis_Fabrication_ProcesseurARM [color="purple", fontcolor="purple", label="14%", poids="1"];
Fabrication_ProcesseurARM -> Taiwan_Fabrication_ProcesseurARM [color="purple", fontcolor="purple", label="54%", poids="2"];
Fabrication_ProcesseurARM -> Chine_Fabrication_ProcesseurARM [color="purple", fontcolor="purple", label="8%", poids="1"];
Fabrication_ProcesseurARM -> ProcedeDUV [cout="0.5", criticite="0.29", delai="0.2", technique="0.2"];
Fabrication_ProcesseurARM -> ProcedeEUV [cout="1.0", criticite="1.0", delai="1.0", technique="1.0"];
Fabrication_ProcesseurARM -> ProcedeDUV [cout="0.5", ics="0.29", delai="0.2", technique="0.2"];
Fabrication_ProcesseurARM -> ProcedeEUV [cout="1.0", ics="1.0", delai="1.0", technique="1.0"];
subgraph cluster_CoreeDuSud_Fabrication_ProcesseurARM {
label="CoreeDuSud_Fabrication_ProcesseurARM";
@ -3537,9 +3537,9 @@ digraph Hierarchie_Composants_Electroniques_Simplifiee {
EcranSpecifique -> PET [];
EcranSpecifique -> IndiumEtain [];
EcranSpecifique -> Arsenic [];
EcranSpecifique -> ProcedeDUV [cout="0.5", criticite="0.29", delai="0.2", technique="0.2"];
EcranSpecifique -> Gallium [cout="0.3", criticite="0.41", delai="0.4", technique="0.5"];
EcranSpecifique -> CreusetGraphite [cout="0.5", criticite="0.44", delai="0.3", technique="0.5"];
EcranSpecifique -> ProcedeDUV [cout="0.5", ics="0.29", delai="0.2", technique="0.2"];
EcranSpecifique -> Gallium [cout="0.3", ics="0.41", delai="0.4", technique="0.5"];
EcranSpecifique -> CreusetGraphite [cout="0.5", ics="0.44", delai="0.3", technique="0.5"];
}
subgraph cluster_StockageEMMC {
@ -3548,11 +3548,11 @@ digraph Hierarchie_Composants_Electroniques_Simplifiee {
StockageEMMC [fillcolor="#b3ffe0", label="Stockage eMMC/UFS", niveau="1"];
// Relations sortantes
StockageEMMC -> Tantale [cout="0.6", criticite="0.64", delai="0.6", technique="0.7"];
StockageEMMC -> Tantale [cout="0.6", ics="0.64", delai="0.6", technique="0.7"];
StockageEMMC -> Fabrication_StockageEMMC [];
StockageEMMC -> CreusetQuartz [cout="0.7", criticite="0.74", delai="0.7", technique="0.8"];
StockageEMMC -> Hafnium [cout="0.8", criticite="0.8", delai="0.8", technique="0.8"];
StockageEMMC -> Silicium [cout="0.9", criticite="0.9", delai="0.9", technique="0.9"];
StockageEMMC -> CreusetQuartz [cout="0.7", ics="0.74", delai="0.7", technique="0.8"];
StockageEMMC -> Hafnium [cout="0.8", ics="0.8", delai="0.8", technique="0.8"];
StockageEMMC -> Silicium [cout="0.9", ics="0.9", delai="0.9", technique="0.9"];
subgraph cluster_Fabrication_StockageEMMC {
@ -3566,7 +3566,7 @@ digraph Hierarchie_Composants_Electroniques_Simplifiee {
Fabrication_StockageEMMC -> Chine_Fabrication_StockageEMMC [color="purple", fontcolor="purple", label="6%", poids="1"];
Fabrication_StockageEMMC -> CoreeDuSud_Fabrication_StockageEMMC [color="purple", fontcolor="purple", label="54%", poids="2"];
Fabrication_StockageEMMC -> EtatsUnis_Fabrication_StockageEMMC [color="purple", fontcolor="purple", label="25%", poids="1"];
Fabrication_StockageEMMC -> ProcedeDUV [cout="0.5", criticite="0.29", delai="0.2", technique="0.2"];
Fabrication_StockageEMMC -> ProcedeDUV [cout="0.5", ics="0.29", delai="0.2", technique="0.2"];
subgraph cluster_Japon_Fabrication_StockageEMMC {
label="Japon_Fabrication_StockageEMMC";
@ -3645,12 +3645,12 @@ digraph Hierarchie_Composants_Electroniques_Simplifiee {
SSDM2 [fillcolor="#b3ffe0", label="SSD M.2", niveau="1"];
// Relations sortantes
SSDM2 -> Tantale [cout="0.7", criticite="0.7", delai="0.7", technique="0.7"];
SSDM2 -> Tantale [cout="0.7", ics="0.7", delai="0.7", technique="0.7"];
SSDM2 -> Fabrication_SSDM2 [];
SSDM2 -> Aluminium [];
SSDM2 -> CreusetQuartz [cout="0.7", criticite="0.74", delai="0.7", technique="0.8"];
SSDM2 -> Hafnium [cout="0.8", criticite="0.8", delai="0.8", technique="0.8"];
SSDM2 -> Silicium [cout="0.9", criticite="0.9", delai="0.9", technique="0.9"];
SSDM2 -> CreusetQuartz [cout="0.7", ics="0.74", delai="0.7", technique="0.8"];
SSDM2 -> Hafnium [cout="0.8", ics="0.8", delai="0.8", technique="0.8"];
SSDM2 -> Silicium [cout="0.9", ics="0.9", delai="0.9", technique="0.9"];
subgraph cluster_Fabrication_SSDM2 {
@ -3665,7 +3665,7 @@ digraph Hierarchie_Composants_Electroniques_Simplifiee {
Fabrication_SSDM2 -> Taiwan_Fabrication_SSDM2 [color="purple", fontcolor="purple", label="5%", poids="1"];
Fabrication_SSDM2 -> CoreeDuSud_Fabrication_SSDM2 [color="purple", fontcolor="purple", label="41%", poids="2"];
Fabrication_SSDM2 -> Chine_Fabrication_SSDM2 [color="purple", fontcolor="purple", label="6%", poids="1"];
Fabrication_SSDM2 -> ProcedeDUV [cout="0.5", criticite="0.29", delai="0.2", technique="0.2"];
Fabrication_SSDM2 -> ProcedeDUV [cout="0.5", ics="0.29", delai="0.2", technique="0.2"];
subgraph cluster_Japon_Fabrication_SSDM2 {
label="Japon_Fabrication_SSDM2";
@ -3768,19 +3768,19 @@ digraph Hierarchie_Composants_Electroniques_Simplifiee {
ProcesseurX86 [fillcolor="#b3ffe0", label="Processeur x86", niveau="1"];
// Relations sortantes
ProcesseurX86 -> Or [cout="0.6", criticite="0.6", delai="0.6", technique="0.6"];
ProcesseurX86 -> Scandium [cout="0.7", criticite="0.7", delai="0.7", technique="0.7"];
ProcesseurX86 -> Tungstene [cout="0.7", criticite="0.6", delai="0.5", technique="0.6"];
ProcesseurX86 -> Or [cout="0.6", ics="0.6", delai="0.6", technique="0.6"];
ProcesseurX86 -> Scandium [cout="0.7", ics="0.7", delai="0.7", technique="0.7"];
ProcesseurX86 -> Tungstene [cout="0.7", ics="0.6", delai="0.5", technique="0.6"];
ProcesseurX86 -> Ceramiques [];
ProcesseurX86 -> Fabrication_ProcesseurX86 [];
ProcesseurX86 -> Hafnium [cout="0.8", criticite="0.84", delai="0.8", technique="0.9"];
ProcesseurX86 -> Aluminium [cout="0.6", criticite="0.5", delai="0.4", technique="0.5"];
ProcesseurX86 -> Palladium [cout="0.6", criticite="0.5", delai="0.4", technique="0.5"];
ProcesseurX86 -> Antimoine [cout="0.7", criticite="0.6", delai="0.5", technique="0.6"];
ProcesseurX86 -> Silicium [cout="0.9", criticite="0.9", delai="0.9", technique="0.9"];
ProcesseurX86 -> CreusetQuartz [cout="0.7", criticite="0.74", delai="0.7", technique="0.8"];
ProcesseurX86 -> Germanium [cout="0.6", criticite="0.64", delai="0.6", technique="0.7"];
ProcesseurX86 -> Phosphore [cout="0.6", criticite="0.5", delai="0.4", technique="0.5"];
ProcesseurX86 -> Hafnium [cout="0.8", ics="0.84", delai="0.8", technique="0.9"];
ProcesseurX86 -> Aluminium [cout="0.6", ics="0.5", delai="0.4", technique="0.5"];
ProcesseurX86 -> Palladium [cout="0.6", ics="0.5", delai="0.4", technique="0.5"];
ProcesseurX86 -> Antimoine [cout="0.7", ics="0.6", delai="0.5", technique="0.6"];
ProcesseurX86 -> Silicium [cout="0.9", ics="0.9", delai="0.9", technique="0.9"];
ProcesseurX86 -> CreusetQuartz [cout="0.7", ics="0.74", delai="0.7", technique="0.8"];
ProcesseurX86 -> Germanium [cout="0.6", ics="0.64", delai="0.6", technique="0.7"];
ProcesseurX86 -> Phosphore [cout="0.6", ics="0.5", delai="0.4", technique="0.5"];
subgraph cluster_Fabrication_ProcesseurX86 {
@ -3795,8 +3795,8 @@ digraph Hierarchie_Composants_Electroniques_Simplifiee {
Fabrication_ProcesseurX86 -> EtatsUnis_Fabrication_ProcesseurX86 [color="purple", fontcolor="purple", label="65%", poids="2"];
Fabrication_ProcesseurX86 -> Israel_Fabrication_ProcesseurX86 [color="purple", fontcolor="purple", label="5%", poids="1"];
Fabrication_ProcesseurX86 -> Allemagne_Fabrication_ProcesseurX86 [color="purple", fontcolor="purple", label="7%", poids="1"];
Fabrication_ProcesseurX86 -> ProcedeDUV [cout="0.5", criticite="0.29", delai="0.2", technique="0.2"];
Fabrication_ProcesseurX86 -> ProcedeEUV [cout="1.0", criticite="1.0", delai="1.0", technique="1.0"];
Fabrication_ProcesseurX86 -> ProcedeDUV [cout="0.5", ics="0.29", delai="0.2", technique="0.2"];
Fabrication_ProcesseurX86 -> ProcedeEUV [cout="1.0", ics="1.0", delai="1.0", technique="1.0"];
subgraph cluster_Irlande_Fabrication_ProcesseurX86 {
label="Irlande_Fabrication_ProcesseurX86";
@ -3882,11 +3882,11 @@ digraph Hierarchie_Composants_Electroniques_Simplifiee {
// Relations sortantes
SSD25 -> Fabrication_SSD25 [];
SSD25 -> Tantale [cout="0.7", criticite="0.7", delai="0.7", technique="0.7"];
SSD25 -> Tantale [cout="0.7", ics="0.7", delai="0.7", technique="0.7"];
SSD25 -> Aluminium [];
SSD25 -> CreusetQuartz [cout="0.7", criticite="0.74", delai="0.7", technique="0.8"];
SSD25 -> Hafnium [cout="0.8", criticite="0.8", delai="0.8", technique="0.8"];
SSD25 -> Silicium [cout="0.9", criticite="0.9", delai="0.9", technique="0.9"];
SSD25 -> CreusetQuartz [cout="0.7", ics="0.74", delai="0.7", technique="0.8"];
SSD25 -> Hafnium [cout="0.8", ics="0.8", delai="0.8", technique="0.8"];
SSD25 -> Silicium [cout="0.9", ics="0.9", delai="0.9", technique="0.9"];
subgraph cluster_Fabrication_SSD25 {
@ -3901,7 +3901,7 @@ digraph Hierarchie_Composants_Electroniques_Simplifiee {
Fabrication_SSD25 -> EtatsUnis_Fabrication_SSD25 [color="purple", fontcolor="purple", label="41%", poids="2"];
Fabrication_SSD25 -> Taiwan_Fabrication_SSD25 [color="purple", fontcolor="purple", label="3%", poids="1"];
Fabrication_SSD25 -> CoreeDuSud_Fabrication_SSD25 [color="purple", fontcolor="purple", label="44%", poids="2"];
Fabrication_SSD25 -> ProcedeDUV [cout="0.5", criticite="0.29", delai="0.2", technique="0.2"];
Fabrication_SSD25 -> ProcedeDUV [cout="0.5", ics="0.29", delai="0.2", technique="0.2"];
subgraph cluster_Japon_Fabrication_SSD25 {
label="Japon_Fabrication_SSD25";
@ -4004,18 +4004,18 @@ digraph Hierarchie_Composants_Electroniques_Simplifiee {
DisqueDur [fillcolor="#b3ffe0", label="Disque dur (HDD)", niveau="1"];
// Relations sortantes
DisqueDur -> Platine [cout="0.6", criticite="0.64", delai="0.6", technique="0.7"];
DisqueDur -> Platine [cout="0.6", ics="0.64", delai="0.6", technique="0.7"];
DisqueDur -> Acier [];
DisqueDur -> Aluminium [cout="0.5", criticite="0.47", delai="0.4", technique="0.5"];
DisqueDur -> Aluminium [cout="0.5", ics="0.47", delai="0.4", technique="0.5"];
DisqueDur -> Fabrication_DisqueDur [];
DisqueDur -> DisqueDur [];
DisqueDur -> Germanium [cout="0.6", criticite="0.64", delai="0.6", technique="0.7"];
DisqueDur -> CreusetGraphite [cout="0.5", criticite="0.44", delai="0.3", technique="0.5"];
DisqueDur -> Germanium [cout="0.6", ics="0.64", delai="0.6", technique="0.7"];
DisqueDur -> CreusetGraphite [cout="0.5", ics="0.44", delai="0.3", technique="0.5"];
DisqueDur -> Arsenic [];
DisqueDur -> Silicium [cout="0.9", criticite="0.9", delai="0.9", technique="0.9"];
DisqueDur -> Antimoine [cout="0.7", criticite="0.6", delai="0.5", technique="0.6"];
DisqueDur -> Gallium [cout="0.5", criticite="0.47", delai="0.4", technique="0.5"];
DisqueDur -> Phosphore [cout="0.6", criticite="0.5", delai="0.4", technique="0.5"];
DisqueDur -> Silicium [cout="0.9", ics="0.9", delai="0.9", technique="0.9"];
DisqueDur -> Antimoine [cout="0.7", ics="0.6", delai="0.5", technique="0.6"];
DisqueDur -> Gallium [cout="0.5", ics="0.47", delai="0.4", technique="0.5"];
DisqueDur -> Phosphore [cout="0.6", ics="0.5", delai="0.4", technique="0.5"];
subgraph cluster_Fabrication_DisqueDur {
@ -4032,7 +4032,7 @@ digraph Hierarchie_Composants_Electroniques_Simplifiee {
Fabrication_DisqueDur -> Thailande_Fabrication_DisqueDur [color="purple", fontcolor="purple", label="39%", poids="2"];
Fabrication_DisqueDur -> EtatsUnis_Fabrication_DisqueDur [color="purple", fontcolor="purple", label="3%", poids="1"];
Fabrication_DisqueDur -> Chine_Fabrication_DisqueDur [color="purple", fontcolor="purple", label="24%", poids="1"];
Fabrication_DisqueDur -> ProcedeDUV [cout="0.5", criticite="0.29", delai="0.2", technique="0.2"];
Fabrication_DisqueDur -> ProcedeDUV [cout="0.5", ics="0.29", delai="0.2", technique="0.2"];
subgraph cluster_Philippines_Fabrication_DisqueDur {
label="Philippines_Fabrication_DisqueDur";
@ -14433,7 +14433,7 @@ digraph Hierarchie_Composants_Electroniques_Simplifiee {
CreusetGraphite [fillcolor="#ffd699", label="Creuset en graphite - Pour fusion de métaux", niveau="1001"];
// Relations sortantes
CreusetGraphite -> Graphite [cout="0.5", criticite="0.44", delai="0.3", technique="0.5"];
CreusetGraphite -> Graphite [cout="0.5", ics="0.44", delai="0.3", technique="0.5"];
}
subgraph cluster_Arsenic {
@ -14743,7 +14743,7 @@ digraph Hierarchie_Composants_Electroniques_Simplifiee {
ProcedeEUV [fillcolor="#ffd699", label="Procédé EUV (Extreme Ultraviolet - 13.5 nm", niveau="1000"];
// Relations sortantes
ProcedeEUV -> Hafnium [cout="0.9", criticite="0.9", delai="0.9", technique="0.9"];
ProcedeEUV -> Hafnium [cout="0.9", ics="0.9", delai="0.9", technique="0.9"];
ProcedeEUV -> Fluorite [];
ProcedeEUV -> Assemblage_ProcedeEUV [];
@ -15360,7 +15360,7 @@ digraph Hierarchie_Composants_Electroniques_Simplifiee {
// Relations sortantes
CreusetQuartz -> Verre [];
CreusetQuartz -> Quartz [cout="0.7", criticite="0.74", delai="0.7", technique="0.8"];
CreusetQuartz -> Quartz [cout="0.7", ics="0.74", delai="0.7", technique="0.8"];
}
subgraph cluster_Fluorite {

View File

@ -53,7 +53,7 @@ def extraire_chemins_vers(G, target, niveau_demande):
def recuperer_donnees(graph, noeuds):
donnees = []
criticite = {}
ics = {}
for noeud in noeuds:
try:
@ -66,31 +66,31 @@ def recuperer_donnees(graph, noeuds):
try:
fabrications = list(graph.predecessors(minerai))
valeurs = [
int(float(graph.get_edge_data(f, minerai)[0].get('criticite', 0)) * 100)
int(float(graph.get_edge_data(f, minerai)[0].get('ics', 0)) * 100)
for f in fabrications
if graph.get_edge_data(f, minerai)
]
if valeurs:
criticite[minerai] = round(sum(valeurs) / len(valeurs))
ics[minerai] = round(sum(valeurs) / len(valeurs))
except Exception as e:
logging.warning(f"Erreur criticité pour {noeud} : {e}")
criticite[minerai] = 50
ics[minerai] = 50
for noeud in noeuds:
try:
operation, minerai = noeud.split('_', 1)
ihh_pays = int(graph.nodes[noeud].get('ihh_pays', 0))
ihh_acteurs = int(graph.nodes[noeud].get('ihh_acteurs', 0))
criticite_val = criticite.get(minerai, 50)
criticite_cat = 1 if criticite_val <= 33 else (2 if criticite_val <= 66 else 3)
ics_val = ics.get(minerai, 50)
ics_cat = 1 if ics_val <= 33 else (2 if ics_val <= 66 else 3)
donnees.append({
'categorie': operation,
'nom': minerai,
'ihh_pays': ihh_pays,
'ihh_acteurs': ihh_acteurs,
'criticite_minerai': criticite_val,
'criticite_cat': criticite_cat
'ics_minerai': ics_val,
'ics_cat': ics_cat
})
except Exception as e:
logging.error(f"Erreur sur le nœud {noeud} : {e}", exc_info=True)

View File

@ -44,8 +44,8 @@ def afficher_graphique_altair(df):
base = alt.Chart(df_cat).encode(
x=alt.X('ihh_pays:Q', title=str(_("pages.visualisations.axis_titles.ihh_countries"))),
y=alt.Y('ihh_acteurs:Q', title=str(_("pages.visualisations.axis_titles.ihh_actors"))),
size=alt.Size('criticite_cat:Q', scale=alt.Scale(domain=[1, 2, 3], range=[50, 500, 1000]), legend=None),
color=alt.Color('criticite_cat:N', scale=alt.Scale(domain=[1, 2, 3], range=['darkgreen', 'orange', 'darkred']))
size=alt.Size('ics_cat:Q', scale=alt.Scale(domain=[1, 2, 3], range=[50, 500, 1000]), legend=None),
color=alt.Color('ics_cat:N', scale=alt.Scale(domain=[1, 2, 3], range=['darkgreen', 'orange', 'darkred']))
)
points = base.mark_circle(opacity=0.6)
@ -147,7 +147,7 @@ def creer_graphes(donnees):
st.error(f"{str(_('errors.graph_creation_error'))} {e}")
def lancer_visualisation_ihh_criticite(graph):
def lancer_visualisation_ihh_ics(graph):
try:
import networkx as nx
from utils.graph_utils import recuperer_donnees