From d70a34fefaa318b2b62129295a133f6448e5c839 Mon Sep 17 00:00:00 2001 From: Lasse Studion Date: Wed, 3 May 2023 22:33:20 +0200 Subject: [PATCH] Fixes --- app.py | 24 +++++++++++++++--------- 1 file changed, 15 insertions(+), 9 deletions(-) diff --git a/app.py b/app.py index 0a04cf0..5922eff 100644 --- a/app.py +++ b/app.py @@ -60,14 +60,20 @@ with st.form("files"): # Ask for relations file. csv_edges = st.file_uploader(label="Upload file with **relations**.", key="relations", help=f'[Example]({info.relations_example})') - sep = st.radio('Separator in your files:', options=[',', ';', 'tab']) - if sep == 'tab': - sep='\t' - - files_uploaded = st.form_submit_button("Ok") + sep = st.radio('Separator in your files:', options=['comma ( , )', 'semicolon ( ; )', 'tab ( \u21E5 )'], help='What are the values in your files separated with?') + + files_uploaded = st.form_submit_button("Done") if files_uploaded: - df = pd.read_csv(csv_edges, sep=sep) + separators = {'comma ( , )': ',', 'semicolon ( ; )': ';', 'tab ( \u21E5 )': '\t'} + if 'sep' not in st.session_state: + st.session_state["sep"] = separators[sep] + + if csv_edges == None: + st.markdown(':red[You need to upload a file with relations.]') + st.stop() + + df = pd.read_csv(csv_edges, sep=st.session_state["sep"]) df.rename({'type': 'relation_type'}, inplace=True, axis=1) # 'type' can't be used as attribute. df.columns = [i.lower() for i in df.columns] # Remove capital letters from column names. @@ -113,7 +119,7 @@ if files_uploaded: ) if csv_nodes != None: # When a nodes file is uploaded. - df_nodes = pd.read_csv(csv_nodes, sep=sep) + df_nodes = pd.read_csv(csv_nodes, sep=st.session_state["sep"]) df_nodes.columns = [i.lower() for i in df_nodes.columns] # Remove capital letters from column names. columns = df_nodes.columns.tolist() if "label" in columns: @@ -136,7 +142,7 @@ if files_uploaded: df_nodes.set_index("labels", inplace=True) gexf_file = "output.gexf" - #with open(gexf_file) as f: + # Make empty graph. G = nx.MultiDiGraph() # Add nodes. @@ -146,7 +152,7 @@ if files_uploaded: G, df, source=source, target=target, chosen_columns=chosen_columns ) - # Turn the graph into text. + # Turn the graph into a string. graph_text = "\n".join([line for line in nx.generate_gexf(G)]) # Download gexf-file.