Skip to content
Snippets Groups Projects
Commit 2c870992 authored by Nils Brüggemann's avatar Nils Brüggemann
Browse files

pyic_view: Allow to load data from larger area than specified lon_reg/lat_reg...

pyic_view: Allow to load data from larger area than specified lon_reg/lat_reg when using North/South Polar Stereo projection.
parent 7064c01d
No related branches found
No related tags found
No related merge requests found
......@@ -159,8 +159,11 @@ class view(object):
}
self.font_size = 6*self.fig_size_fac
self.res = 0.3
# lon_reg / lat_reg specify range for loaded data
self.lon_reg = np.array([-180., 180.])
self.lat_reg = np.array([-90., 90.])
# xlim / ylim specify axes x and y limits
# (this is not the same for more complicated projections)
self.xlim = self.lon_reg
self.ylim = self.lat_reg
self.it = 0
......@@ -527,18 +530,20 @@ class view(object):
#self.ylim = [-4658959.2511977535, 4658959.2511977535]
self.lon_reg = [-180, 180]
self.lat_reg = [50, 90]
lat_reg_axlim = [60,90]
elif self.proj=="+proj=stere +lat_0=-90 +lon_0=0":
#self.xlim = [-5965970.154575175, 5965970.154575175]
#self.ylim = [-5963978.177895851, 5963978.177895851]
self.lon_reg = [-180, 180]
self.lat_reg = [-90, -40]
lat_reg_axlim = [-90,-50]
else:
self.lon_reg = [-180, 180]
self.lat_reg = [-90, 90]
lat_reg_axlim = self.lat_reg
self.lon_lat_reg_tk = tk.StringVar(value=f"{self.lon_reg[0]},{self.lon_reg[1]},{self.lat_reg[0]},{self.lat_reg[1]}")
#self.lon_lat_reg_tk.set(lon_lat_reg_str)
self.xlim, self.ylim = get_xlim_ylim(
self.lon_reg, self.lat_reg, self.proj, self.transformer)
self.lon_reg, lat_reg_axlim, self.proj, self.transformer)
print(f'set_default_lon_lat_reg:')
print(self.lon_reg, self.lat_reg, self.xlim, self.ylim)
......@@ -548,6 +553,13 @@ class view(object):
self.transformer = Proj.from_pipeline(self.proj)
self.set_default_lon_lat_reg()
self.make_new_axis()
def update_lon_lat_reg(self, *args):
lon_lat_reg_str = self.lon_lat_reg_tk.get()
lon_lat_reg = str_to_array(lon_lat_reg_str)
self.lon_reg = [lon_lat_reg[0], lon_lat_reg[1]]
self.lat_reg = [lon_lat_reg[2], lon_lat_reg[3]]
self.message(f'Updating lon_reg to {tuple(map(float, self.lon_reg))} and lat_reg to {tuple(map(float, self.lat_reg))}')
def update_data_range(self):
xlim = self.ax.get_xlim()
......@@ -646,13 +658,6 @@ class view(object):
cmap = getattr(plt.cm, cmap)
self.hm[0].set_cmap(cmap)
self.canvas.draw()
def update_lon_lat_reg(self, *args):
lon_lat_reg_str = self.lon_lat_reg_tk.get()
lon_lat_reg = str_to_array(lon_lat_reg_str)
self.lon_reg = [lon_lat_reg[0], lon_lat_reg[1]]
self.lat_reg = [lon_lat_reg[2], lon_lat_reg[3]]
self.message(f'Updating lon_reg to {tuple(map(float, self.lon_reg))} and lat_reg to {tuple(map(float, self.lat_reg))}')
def get_clim(self, clim, data):
# --- clim
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment