Skip to content

Commit

Permalink
fix: cartopy v0.23 incompatibility & linter
Browse files Browse the repository at this point in the history
  • Loading branch information
CyanideCN committed May 2, 2024
1 parent 0d1f55f commit a6259fe
Show file tree
Hide file tree
Showing 3 changed files with 20 additions and 14 deletions.
14 changes: 7 additions & 7 deletions cinrad/io/_radar_struct/standard_data.py
Original file line number Diff line number Diff line change
Expand Up @@ -365,13 +365,13 @@
l3_vwp_header_dtype = np.dtype(l3_vwp_header)

l3_vwp_table = [
("start_time","i4"),
("height","i4"),
("fitvalid","i4"),
("wind_direction","f4"),
("wind_speed","f4"),
("rms_std","f4"),
("res","8c"),
("start_time", "i4"),
("height", "i4"),
("fitvalid", "i4"),
("wind_direction", "f4"),
("wind_speed", "f4"),
("rms_std", "f4"),
("res", "8c"),
]

l3_vwp_table_dtype = np.dtype(l3_vwp_table)
Expand Down
16 changes: 10 additions & 6 deletions cinrad/io/level2.py
Original file line number Diff line number Diff line change
Expand Up @@ -27,10 +27,14 @@

def epoch_seconds_to_utc(epoch_seconds: float) -> datetime.datetime:
r"""Convert epoch seconds to UTC datetime"""
return datetime.datetime.utcfromtimestamp(epoch_seconds).replace(tzinfo=datetime.timezone.utc)
return datetime.datetime.utcfromtimestamp(epoch_seconds).replace(
tzinfo=datetime.timezone.utc
)


def localdatetime_to_utc(ldt: datetime.datetime, tz: datetime.timezone = utc8_tz) -> datetime.datetime:
def localdatetime_to_utc(
ldt: datetime.datetime, tz: datetime.timezone = utc8_tz
) -> datetime.datetime:
r"""Convert local datetime to UTC datetime"""
if ldt.tzinfo is None:
ldt = ldt.replace(tzinfo=tz) # suppose the default timezone is UTC+8
Expand Down Expand Up @@ -168,7 +172,9 @@ def _SAB_reader(self, f: Any, dtype: str = "SAB"):
data = np.frombuffer(f.read(), dtype=radar_dtype)
deltday = datetime.timedelta(days=int(data["day"][0]))
deltsec = datetime.timedelta(milliseconds=int(data["time"][0]))
_ONE_DAY = datetime.timedelta(days=1) # MARK: start from 1969-12-31, we don't know why
_ONE_DAY = datetime.timedelta(
days=1
) # MARK: start from 1969-12-31, we don't know why
epoch_seconds = (deltday + deltsec - _ONE_DAY).total_seconds()
self.scantime = epoch_seconds_to_utc(epoch_seconds)
self.Rreso = data["gate_length_r"][0] / 1000
Expand Down Expand Up @@ -900,9 +906,7 @@ def __init__(self, file):
self.stationlon = data["header"]["longitude"][0] * 360 / 65535
self.stationlat = data["header"]["latitude"][0] * 360 / 65535
self.radarheight = data["header"]["height"][0] * 1000 / 65535
self.scantime = epoch_seconds_to_utc(
data["data"]["radial_time"][0]
)
self.scantime = epoch_seconds_to_utc(data["data"]["radial_time"][0])
self.reso = np.round(data["data"]["gate_length"][0] * 1000 / 65535) / 1000
self.first_gate_dist = (
np.round(data["data"]["first_gate_dist"][0] * 1000 / 65535) / 1000
Expand Down
4 changes: 3 additions & 1 deletion cinrad/visualize/utils.py
Original file line number Diff line number Diff line change
Expand Up @@ -171,11 +171,13 @@ def __init__(self, filename: str, encoding: str = "gbk"):
pass
self._fields = self._reader.fields


from cartopy import __version__

if __version__ >= "0.23.0":
ShpReader = shapereader.BasicReader


def setup_plot(dpi: Number_T, figsize: tuple = FIG_SIZE, style: str = "black") -> Any:
if style == "transparent":
figsize = (10, 10)
Expand Down Expand Up @@ -261,7 +263,7 @@ def save(fpath: str, style: str = "black", **kwargs):
@lru_cache(maxsize=2)
def get_shp() -> list:
flist = get_shp_list()
shps = [list(ShpReader(i).geometries()) for i in flist]
shps = [list(ShpReader(i, encoding="gbk").geometries()) for i in flist]
return shps


Expand Down

0 comments on commit a6259fe

Please sign in to comment.