Skip to content

Commit

Permalink
Merge pull request #240 from adybbroe/fix-composite-plot-overlapping-…
Browse files Browse the repository at this point in the history
…bands

Fix rsr plotting to allow for similar (overlapping) bands
  • Loading branch information
adybbroe authored Dec 18, 2024
2 parents ef8bfe9 + 8ca1082 commit 2a89746
Showing 1 changed file with 19 additions and 15 deletions.
34 changes: 19 additions & 15 deletions bin/composite_rsr_plot.py
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
#!/usr/bin/env python
# -*- coding: utf-8 -*-
#
# Copyright (c) 2016-2022 Pytroll developers
# Copyright (c) 2016-2022, 2024 Pytroll developers
#
#
# This program is free software: you can redistribute it and/or modify
Expand Down Expand Up @@ -103,6 +103,11 @@ def get_arguments():
help="The wavelength range for the plot",
default=[None, None], type=float)

parser.add_argument("--exclude_bandnames", nargs='*',
default=[],
required=False,
help="Sensor band names to exclude from the plot", type=str)

return parser.parse_args()


Expand Down Expand Up @@ -139,6 +144,8 @@ def get_arguments():
elif args.wavelength:
req_wvl = args.wavelength

excluded_bandnames = args.exclude_bandnames

figscale = 1.0
if wvlmin:
figscale = (wvlmax - wvlmin) / 4.
Expand Down Expand Up @@ -184,24 +191,21 @@ def get_arguments():

else:
wvlx = wvlmin
prev_band = None
prev_bands = []
while wvlx < wvlmax:
bands = rsr.get_bandname_from_wavelength(wvlx, wavel_res, multiple_bands=True)

if isinstance(bands, list):
b__ = bands[0]
for b in bands[1:]:
LOG.warning("Skipping band %s", str(b))
else:
b__ = bands

wvlx = wvlx + wavel_res / 5.
if not b__:
if not bands:
continue
if b__ != prev_band:
plt = plot_band(plt, b__, rsr,
platform_name_in_legend=(not no_platform_name_in_legend))
prev_band = b__

if not isinstance(bands, list):
bands = [bands]

for b__ in bands:
if b__ not in excluded_bandnames and b__ not in prev_bands:
plt = plot_band(plt, b__, rsr,
platform_name_in_legend=(not no_platform_name_in_legend))
prev_bands.append(b__)

if not something2plot:
LOG.error("Nothing to plot!")
Expand Down

0 comments on commit 2a89746

Please sign in to comment.