Skip to content

Commit 86f2e09

Browse files
committed
update eddy anim to display several eddies
1 parent 17d78d8 commit 86f2e09

File tree

1 file changed

+12
-12
lines changed
  • src/py_eddy_tracker/appli

1 file changed

+12
-12
lines changed

src/py_eddy_tracker/appli/gui.py

Lines changed: 12 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -36,6 +36,7 @@ def __init__(self, eddy, intern=False, sleep_event=0.1, **kwargs):
3636
self.eddy = eddy
3737
x_name, y_name = eddy.intern(intern)
3838
self.t, self.x, self.y = eddy.time, eddy[x_name], eddy[y_name]
39+
self.x_core, self.y_core = eddy["lon"], eddy["lat"]
3940
self.pause = False
4041
self.period = self.eddy.period
4142
self.sleep_event = sleep_event
@@ -46,15 +47,10 @@ def setup(self, cmap="jet", nb_step=25, figsize=(8, 6)):
4647
self.colors = cmap(arange(nb_step + 1) / nb_step)
4748
self.nb_step = nb_step
4849

49-
x_min, x_max = self.x.min(), self.x.max()
50+
x_min, x_max = self.x_core.min() - 2, self.x_core.max() + 2
5051
d_x = x_max - x_min
51-
x_min -= 0.05 * d_x
52-
x_max += 0.05 * d_x
53-
y_min, y_max = self.y.min(), self.y.max()
52+
y_min, y_max = self.y_core.min() - 2, self.y_core.max() + 2
5453
d_y = y_max - y_min
55-
y_min -= 0.05 * d_y
56-
y_max += 0.05 * d_y
57-
5854
# plot
5955
self.fig = pyplot.figure(figsize=figsize)
6056
t0, t1 = self.period
@@ -156,7 +152,7 @@ def anim():
156152
left arrow => t - 1, right arrow => t + 1, + => speed increase of 10 %, - => speed decrease of 10 %"""
157153
)
158154
parser.add_argument("filename", help="eddy atlas")
159-
parser.add_argument("id", help="Track id to anim", type=int)
155+
parser.add_argument("id", help="Track id to anim", type=int, nargs="*")
160156
parser.add_argument(
161157
"--intern",
162158
action="store_true",
@@ -166,6 +162,7 @@ def anim():
166162
"--keep_step", default=25, help="number maximal of step displayed", type=int
167163
)
168164
parser.add_argument("--cmap", help="matplotlib colormap used")
165+
parser.add_argument("--all", help="All eddies will be drawed", action='store_true')
169166
parser.add_argument(
170167
"--time_sleep",
171168
type=float,
@@ -176,13 +173,16 @@ def anim():
176173
"--infinity_loop", action="store_true", help="Press Escape key to stop loop"
177174
)
178175
args = parser.parse_args()
179-
variables = ["time", "track"]
176+
variables = ["time", "track", "longitude", "latitude"]
180177
variables.extend(TrackEddiesObservations.intern(args.intern, public_label=True))
181178

182-
atlas = TrackEddiesObservations.load_file(args.filename, include_vars=variables)
183-
eddy = atlas.extract_ids([args.id])
179+
eddies = TrackEddiesObservations.load_file(args.filename, include_vars=variables)
180+
if not args.all:
181+
if len(args.id) == 0:
182+
raise Exception('You need to specify id to display or ask explicity all with --all option')
183+
eddies = eddies.extract_ids(args.id)
184184
a = Anim(
185-
eddy,
185+
eddies,
186186
intern=args.intern,
187187
sleep_event=args.time_sleep,
188188
cmap=args.cmap,

0 commit comments

Comments
 (0)