From 96afc912e5f7d52e5391ba7ede9492fca7a49cd9 Mon Sep 17 00:00:00 2001 From: daxid <david.rouquet@tetras-libre.fr> Date: Tue, 17 Jan 2023 14:33:58 +0000 Subject: [PATCH] add svg output --- config.sample.ini | 1 + convert_text_to_amr.py | 21 +++++++++++++++++++-- 2 files changed, 20 insertions(+), 2 deletions(-) diff --git a/config.sample.ini b/config.sample.ini index 0a6ebd95..da1a9f2b 100644 --- a/config.sample.ini +++ b/config.sample.ini @@ -10,6 +10,7 @@ SENTENCE_SUFFIX = .sentence.txt PENMAN_AMR_GRAPH_SUFFIX = .stog.amr.penman DOT_AMR_GRAPH_SUFFIX = .stog.amr.dot PNG_AMR_GRAPH_SUFFIX = .stog.amr.png +SVG_AMR_GRAPH_SUFFIX = .stog.amr.svg AMR_RDF_SUFFIX = .stog.amr.nt AMR_TTL_SUFFIX = .stog.amr.ttl diff --git a/convert_text_to_amr.py b/convert_text_to_amr.py index fe6df82a..1b0fda28 100644 --- a/convert_text_to_amr.py +++ b/convert_text_to_amr.py @@ -44,6 +44,7 @@ SENTENCE_SUFFIX = config['PARAM']['SENTENCE_SUFFIX'] PENMAN_AMR_GRAPH_SUFFIX = config['PARAM']['PENMAN_AMR_GRAPH_SUFFIX'] DOT_AMR_GRAPH_SUFFIX = config['PARAM']['DOT_AMR_GRAPH_SUFFIX'] PNG_AMR_GRAPH_SUFFIX = config['PARAM']['PNG_AMR_GRAPH_SUFFIX'] +SVG_AMR_GRAPH_SUFFIX = config['PARAM']['SVG_AMR_GRAPH_SUFFIX'] AMR_RDF_SUFFIX = config['PARAM']['AMR_RDF_SUFFIX'] AMR_TTL_SUFFIX = config['PARAM']['AMR_TTL_SUFFIX'] @@ -95,6 +96,11 @@ def get_png_amr_graph_output_filepath(data): data_file_name = data["data_ref"] + PNG_AMR_GRAPH_SUFFIX return data_dir + data_file_name +def get_svg_amr_graph_output_filepath(data): + data_dir = get_output_data_dir(data["output_data_dir"]) + data_file_name = data["data_ref"] + SVG_AMR_GRAPH_SUFFIX + return data_dir + data_file_name + def get_amr_rdf_triple_output_filepath(data): data_dir = get_output_data_dir(data["output_data_dir"]) data_file_name = data["data_ref"] + AMR_RDF_SUFFIX @@ -238,19 +244,30 @@ def generate_dot_amr_graph(data): graph = data["graph"] try: - # -- generating dot/png files using AMRLib and GraphViz dot_fn = get_dot_amr_graph_output_filepath(data) + + # -- generating dot/png files using AMRLib and GraphViz format = 'png' print("----- AMR Graph file (dot): " + dot_fn) plot = AMRPlot(dot_fn, format) plot.build_from_graph(graph) plot.graph.render() - render_fn = dot_fn + '.' + format # -- renaming PNG file good_png_fn = get_png_amr_graph_output_filepath(data) print("----- AMR Graph file (png): " + good_png_fn) os.rename(render_fn, good_png_fn) + # -- generating dot/svg files using AMRLib and GraphViz + format = 'svg' + print("----- AMR Graph file (dot): " + dot_fn) + plot = AMRPlot(dot_fn, format) + plot.build_from_graph(graph) + plot.graph.render() + render_fn = dot_fn + '.' + format # -- renaming SVG file + good_svg_fn = get_svg_amr_graph_output_filepath(data) + print("----- AMR Graph file (svg): " + good_svg_fn) + os.rename(render_fn, good_svg_fn) + except: logger.warning('Exception when trying to plot') # -- TODO traceback.print_exc() -- GitLab