hurdat2parser v2.3x is major release/update.
Hurdat2
tweaks- online retrieval now attempts to download to a local file.
- IMPORTANT! Versions
< 2.3
are not guaranteed to see the newest hurdat2 releases due to url-name structure change and too-strict regex code (my fault).
- IMPORTANT! Versions
- Call/Retrieval improvements
- Attribute-like access to individual cyclones
- named cyclones (ex:
atl.hugo
,atl.rita
, etc).- This will return the most recent cyclone assigned a particular name. This guarantees that most-notorious cyclones with retired names will be returned
- Assigned ATCFID's (a basin prefix, cyclone number, and the season) ... (ex:
atl.al171995
oratl.AL171995
)
- named cyclones (ex:
- recognizance of interchangeable order of season and cyclone number (
atl[1995,17]
oratl[17,1995]
return the sameTropicalCyclone
. In addition, ATCF-ids without the basin prefix are recognized (atl[171995]
oratl[199517]
)
- Attribute-like access to individual cyclones
- added
random()
method that returns a randomTropicalCyclone
object. - uniform
rank_seasons()
that allows part-season ranking- added
method
keyword that allows one to choose the desired ranking method. The options areD
for dense rankings (default) (1,2,2,3) orC
for competition-based ranking (1,2,2,4). - deprecated
rank_seasons_thru()
method.
- added
- uniform
_season_stats
handler/wrapper method that supports printing to console or asstr
.- deprecated
_season_stats_str
method
- deprecated
- added
from_map
method that usesmatplotlib
to draw polylines, returning them as tupled coordinates.- added coastline coordinate constants
- Click Here for a list of included coastlines.
- the purpose for these are to be used with the
<TropicalCyclone>.crosses
method (also new this version).
- added coastline coordinate constants
- online retrieval now attempts to download to a local file.
Season
tweaks- updated
stats()
method to now report densely-based and competition-based rankings.
- updated
TropicalCyclone
tweaks- added vector info and saffir-simpson ratings to
.summary()
- added
crosses
method that allows comparing a system's track to a coordinate list to see if it crossed the path. Click Here for a guide on how to use. - removed/changed verbiage where I erroneously had indicated 50kt winds as "gale force".
.info()
temporal data are now status-basedtrack_map()
tweaks and improvements- legend is no longer draggable by default. See keyword below
- removed auto-resizing that inadvertently required
tkinter
in previous versions. - tweaked placement of NaturalEarth accreditation
- added keyboard shortcuts for Zooming (
SHIFT
+ arrows) and Panning (CTRL
+ arrows) and toggle of legend (N
) - temporal labels no longer inadvertently alter the size of the Axes when panning.
- added some interaction. Clicking on a segment will reveal some basic
TCRecordEntry
(segment) information in the lower left corner of the display (may be buggy. Try toggling the maximize screen option and see if it appears). - default behavior more-so mimics the
matplotlib
(mpl) defaults - small visual improvements including default map extent, sub-tropical cyclone discrimination on map and legend, and bolder tracks for major hurricanes, and Natural Earth map citation
- higher resolution maps
- new supported keywords
- removed
aspect_ratio
kw - added
width
,height
; these are used in the figsize keyword when creating the figure. - added
dpi
, andblock
. These mimic theirmpl
counterparts - added
draggable
kw that indicates if the displayed legend should be able to be interacted with. - added
extents
kw that can show generalized quadrant-based TS, 50kt, and Hurricane force wind extents. As of the most recent hurdat2 release, this is only available for cyclones>=
2004. - added
padding
kw to allow modification of the default focal scope on the track itself. The higher this number, the more "zoomed-out" it will appear. - added
saveonly
kw that saves an image locally instead of showing the plot on screen. This also respects the aforementionedwidth
,height
, anddpi
kw's - added
backend
to allow the user to dictate which mpl backend to use
- removed
- added vector info and saffir-simpson ratings to
TCRecordEntry
tweaks- formalized
entrytime
s as UTC/Zulu timezone (won't change calculated stats any) - added
category
property as an alias forsaffir_simpson
- formalized
- made small tweaks to Saffir-simpson scale to reflect data from . Some of the scale I had was off by one or two knots. As reported data is rounded to the nearest 20th (0, 5, 10, 15, 20, etc), the tweaks are inconsequential.
- added
gis
keyword to_calculations.haversine
. This allows the use of coordinates in (lon, lat) format (True
; common in GIS programs) or (lat, lon) (False
; default). In future releases, I may go to the (lon, lat) format as default and uniform throughout. hurdat2()
methods made uniform by returning a string. You can optionally use the original line from the database instead of the default of objectively-formed wind-extent data.- inclusion of
BoundingBox
andCoordinate
classes in_gis
module. These are what enable functionality to thefrom_map
andcrosses
methods.