diff --git a/ProcessorDeposition.py b/ProcessorDeposition.py
index 2e2df48d88a3258f576f2e3f58e42a78619e7697..569c22799ead3fdc5eba974dc01a14add5101c5b 100644
--- a/ProcessorDeposition.py
+++ b/ProcessorDeposition.py
@@ -10,13 +10,13 @@ from string import Template
 import iris
 from iris.cube import CubeList
 
-from plotting.common.plotting_coordinator.ews_depo_disease_plotting_coordinator import EWSPlottingDepoBase
-
 from ProcessorUtils import (
         get_only_existing_globs,
         subprocess_and_log,
         add_filters_to_sublogger,
 )
+from ews_postprocessing.deposition.deposition_post_processor import DepositionPostProcessor
+
 
 logger = logging.getLogger('Processor.Deposition')
 add_filters_to_sublogger(logger)
@@ -66,7 +66,6 @@ def process_in_job_dep(jobPath,status,config,component):
             msg = f"Unexpected number of timepoints ({timepoint_count}) in cube {cube.name()}"
             logger.error(msg)
             raise RuntimeError(msg)
-
     return
 
 
@@ -107,23 +106,23 @@ def process_EWS_plotting_dep(jobPath,config):
 
         logger.info(f"Running EWS-Plotting with the following configs:\n{sys_config}\n{name_extraction_config}\n{run_config}\n{run_config_norm}\n{chart_config}")
 
-        depo_plotter = EWSPlottingDepoBase()
-        depo_plotter.set_param_config_files(sys_config_file_arg=sys_config,
-                                        depo_name_extraction_config_file_arg=name_extraction_config,
-                                        chart_config_file_arg= chart_config,
-                                        depo_plotting_run_config_file_arg=run_config,
-                                        depo_plotting_normalized_run_config_file_arg=run_config_norm,
-                                        name_file_wildcard_arg=name_file_wildcard,
-                                        wheat_sources_dir_arg=deposition_path,
-                                        output_dir_arg=output_dir,
-                                        issue_date_arg=config['StartString'],
-                                        extraction_file_prefix_arg=extraction_file_prefix)
+        depo_processor = DepositionPostProcessor()
+        depo_processor.set_param_config_files(sys_config_file_arg = sys_config,
+                                              depo_name_extraction_config_file_arg = name_extraction_config,
+                                              chart_config_file_arg = chart_config,
+                                              depo_plotting_run_config_file_arg = run_config,
+                                              depo_plotting_normalized_run_config_file_arg = run_config_norm,
+                                              name_file_wildcard_arg = name_file_wildcard,
+                                              wheat_sources_dir_arg = deposition_path,
+                                              output_dir_arg = output_dir,
+                                              issue_date_arg = config['StartString'],
+                                              extraction_file_prefix_arg = extraction_file_prefix)
 
 
         # asia/east africa env suit should not perform normalization, false gets passed here for these areas
-        depo_plotter.name_extract_params.NORMALIZE = (normalize.upper() == "TRUE")
+        depo_processor.name_extract_params.NORMALIZE = (normalize.upper() == "TRUE")
 
-        depo_plotter.plot_depo()
+        depo_processor.process()
 
         # check the output
         EWSPlottingOutputDir = f"{output_dir}/images/"
diff --git a/ProcessorEnvironment.py b/ProcessorEnvironment.py
index cd45ba3e5ad2b090df5d4a6b645d09673e9b2ed8..e57c40a1fcc4761eaf0b6def7adf39a5fc32a576 100644
--- a/ProcessorEnvironment.py
+++ b/ProcessorEnvironment.py
@@ -12,8 +12,8 @@ import tarfile
 import iris
 from iris.cube import CubeList
 
+from ews_postprocessing.environmental_suitability.env_suit_post_processor import EnvSuitPostProcessor
 from plotting.common.utils import EnvSuitDiseaseInfo
-from plotting.common.plotting_coordinator.ews_env_disease_plotting_coordinator import EWSPlottingEnvSuitBase
 
 import EnvSuitPipeline as esp
 from ProcessorUtils import (
@@ -151,15 +151,15 @@ def process_EWS_plotting_env2_0(jobPath,config):
 
         logger.info(f"Running EWS-Plotting with the following configs:\n{sys_config}\n{run_config}\n{chart_config}")
 
-        env_suit_plotter = EWSPlottingEnvSuitBase()
-        env_suit_plotter.set_param_config_files(sys_params_file_arg=sys_config,
-                                             chart_params_file_arg=chart_config,
-                                             run_params_file_arg=run_config,
-                                             es_output_dir_arg=output_dir,
-                                             issue_date_arg=config['StartString'],
-                                             disease_csv_template_arg=csv_template_dir)
+        env_suit_processor = EnvSuitPostProcessor()
+        env_suit_processor.set_param_config_files(sys_params_file_arg = sys_config,
+                                                  chart_params_file_arg = chart_config,
+                                                  run_params_file_arg = run_config,
+                                                  es_output_dir_arg = output_dir,
+                                                  issue_date_arg = config['StartString'],
+                                                  disease_csv_template_arg = csv_template_dir)
 
-        env_suit_plotter.run_params.FILTER_FOR_COUNTRY = (filter_for_country.upper() == "TRUE")
+        env_suit_processor.run_params.FILTER_FOR_COUNTRY = (filter_for_country.upper() == "TRUE")
 
         # Include further diseases in plotting. In this case the irrigated suitabilite for the rusts.
         # TODO: move this part out into a config
@@ -169,9 +169,9 @@ def process_EWS_plotting_env2_0(jobPath,config):
             EnvSuitDiseaseInfo("Stripe rust temp-only", "stripe_temponly", config['StartString'], "StripeRust_TempOnly", csv_template_dir)
         ]
 
-        env_suit_plotter.add_diseases(diseases=extra_diseases)
+        env_suit_processor.add_diseases(diseases=extra_diseases)
 
-        env_suit_plotter.plot_env_suit()
+        env_suit_processor.process()
 
         # check the output
         EWSPlottingOutputDir = f"{output_dir}/images/"
diff --git a/ProcessorEpidemiology.py b/ProcessorEpidemiology.py
index 9be966496cf62ef3d53ac7585beb8525a781ed29..f8c9cb5aabb7f06c4fb338cd8b1fe852ae7c03ff 100644
--- a/ProcessorEpidemiology.py
+++ b/ProcessorEpidemiology.py
@@ -23,7 +23,7 @@ from EpiModel import ( # created by rs481
     EpiPrepLoader,
     plotRaster
 )
-from plotting.common.plotting_coordinator.ews_epi_disease_plotting_coordinator import EWSPlottingEPIBase
+from ews_postprocessing.epi.epi_post_processor import EPIPostPostProcessor
 
 from ProcessorUtils import (
         open_and_check_config,
@@ -575,8 +575,8 @@ def process_EWS_plotting_epi(jobPath,config):
 
         logger.info(f"Running EWS-Plotting with the following configs:\n{sys_config}\n{run_config}\n{chart_config}")
 
-        epi_plotter = EWSPlottingEPIBase()
-        epi_plotter.set_param_config_files(sys_params_file_arg=sys_config,
+        epi_processor = EPIPostPostProcessor()
+        epi_processor.set_param_config_files(sys_params_file_arg=sys_config,
                                         chart_params_file_arg=chart_config,
                                         run_params_file_arg=run_config,
                                         epi_input_csv_arg=epi_filename+'_seasonsofar.csv',
@@ -587,7 +587,7 @@ def process_EWS_plotting_epi(jobPath,config):
                                         wheat_source_disease_name_arg=deposition_disease_name,
                                         map_title_arg=map_title,
                                         chart_area_prefix=plotting_region_name_lower)
-        epi_plotter.plot_epi()
+        epi_processor.process()
 
         # prepare command for seasonplusforecast
 
@@ -595,8 +595,8 @@ def process_EWS_plotting_epi(jobPath,config):
 
         logger.info(f"Running EWS-Plotting with the following configs:\n{sys_config}\n{run_config}\n{chart_config}")
 
-        epi_plotter_2 = EWSPlottingEPIBase()
-        epi_plotter_2.set_param_config_files(sys_params_file_arg=sys_config,
+        epi_processor_2 = EPIPostPostProcessor()
+        epi_processor_2.set_param_config_files(sys_params_file_arg=sys_config,
                                         chart_params_file_arg=chart_config,
                                         run_params_file_arg=run_config,
                                         epi_input_csv_arg=epi_filename+'.csv', # for seasonplusforecast
@@ -608,7 +608,7 @@ def process_EWS_plotting_epi(jobPath,config):
                                         wheat_source_disease_name_arg=deposition_disease_name,
                                         map_title_arg=map_title,
                                         chart_area_prefix=plotting_region_name_lower)
-        epi_plotter_2.plot_epi()
+        epi_processor_2.process()
 
         # check the output
         EWSPlottingOutputDir = f"{ews_plot_dir}/images/"
diff --git a/run_Processor.sh b/run_Processor.sh
index 02e20d6c6117351cea3de67273202afbd64d14b4..1713e9e344aece9102523dd9cd679e348e755b8e 100755
--- a/run_Processor.sh
+++ b/run_Processor.sh
@@ -13,9 +13,10 @@ advisory=${bin}/advisory_builder/
 met_processing=${bin}/met_extractor_v2/main/
 met_processor=${bin}/environmental_suitability/
 plotting=${bin}/plotting/
+post_processing=${bin}/plotting/
 source_gen=${bin}/source_gen/
 
-export PYTHONPATH=$PYTHONPATH:$flagdir:$epimodel:$advisory:$met_processing:$met_processor:$plotting:$source_gen
+export PYTHONPATH=$PYTHONPATH:$flagdir:$epimodel:$advisory:$met_processing:$met_processor:$plotting:$source_gen:$post_processing
 
 # provide path to email credentials for logging