diff --git a/gstlal/bin/gstlal_plot_psd_horizon b/gstlal/bin/gstlal_plot_psd_horizon
index 168a462bf6362a715a7f38c548af147b2b7310dd..4d2315165bb0f537511725b4b4a4236c600cc9b5 100755
--- a/gstlal/bin/gstlal_plot_psd_horizon
+++ b/gstlal/bin/gstlal_plot_psd_horizon
@@ -29,6 +29,7 @@ import numpy
 import lal
 import lal.series
 from glue.ligolw import utils as ligolw_utils
+from gstlal import plotutil
 from gstlal import reference_psd
 
 if len(sys.argv) < 3:
@@ -36,23 +37,22 @@ if len(sys.argv) < 3:
 	sys.exit()
 
 outname = sys.argv[1]
-colors = {"H1":"r", "H2":"b", "L1":"g", "V1":"m", "H1H2":"c", "E1":"b", "E2":"r", "E3":"g"}
-horizons = dict((k, []) for k in colors)
-times = dict((k, []) for k in colors)
+horizons = {}
+times = {}
 for f in sys.argv[2:]:
 	psds = lal.series.read_psd_xmldoc(ligolw_utils.load_filename(f, verbose = True, contenthandler = lal.series.PSDContentHandler))
 	for ifo, psd in psds.items():
 		if psd is not None:
-			times[ifo].append(int(psd.epoch))
-			horizons[ifo].append(reference_psd.HorizonDistance(10., 2048., psd.deltaF, 1.4, 1.4)(psd, 8.)[0])
+			times.setdefault(ifo, []).append(int(psd.epoch))
+			horizons.setdefault(ifo, []).append(reference_psd.HorizonDistance(10., 2048., psd.deltaF, 1.4, 1.4)(psd, 8.)[0])
 
 pyplot.figure(figsize=(12,4))
 pyplot.subplot(121)
 minh, maxh = (float("inf"), 0)
 mint = min([min(t) for t in times.values() if t])
-for ifo in colors:
+for ifo in horizons:
 	if len(horizons[ifo]) > 0:
-		pyplot.semilogy((numpy.array(times[ifo]) - mint) / 1000., horizons[ifo], 'x', color = colors[ifo], label = ifo)
+		pyplot.semilogy((numpy.array(times[ifo]) - mint) / 1000., horizons[ifo], 'x', color = plotutil.colour_from_instruments([ifo]), label = ifo)
 		maxh = max(maxh, max(horizons[ifo]))
 		minh = min(minh, min(horizons[ifo]))
 #pyplot.legend()
@@ -61,9 +61,9 @@ pyplot.ylabel('Mpc')
 pyplot.grid()
 pyplot.subplot(122)
 binvec = numpy.linspace(minh, maxh, 25)
-for ifo in colors:
+for ifo in horizons:
 	if len(horizons[ifo]) > 0:
-		pyplot.hist(horizons[ifo], binvec, color = colors[ifo], alpha = 0.5, label = ifo)
+		pyplot.hist(horizons[ifo], binvec, color = plotutil.colour_from_instruments([ifo]), alpha = 0.5, label = ifo)
 pyplot.legend()
 pyplot.xlabel("Mpc")
 pyplot.ylabel("Count")