gfdlvitals 3.0.6__py3-none-any.whl → 3.0.8__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
gfdlvitals/extensions.py CHANGED
@@ -1,6 +1,7 @@
1
1
  """ Pandas class extension for gfdlvitals """
2
2
 
3
3
  import copy
4
+ import datetime
4
5
  import math
5
6
  import sqlite3
6
7
  import warnings
@@ -369,7 +370,7 @@ class VitalsDataFrame(pd.DataFrame):
369
370
  padding = np.arange(1, maxlen - len(self.index) + 1) + endyear[0]
370
371
  added_index = [cftime.DatetimeNoLeap(x, *endyear[1:]) for x in padding]
371
372
  _df = pd.DataFrame({"times": added_index}).set_index("times")
372
- _df = self.append(_df)
373
+ _df = pd.concat([self,_df])
373
374
  _df.attrs = self.attrs
374
375
  for column in self.columns:
375
376
  _df[column].attrs = self[column].attrs
@@ -394,6 +395,11 @@ class VitalsDataFrame(pd.DataFrame):
394
395
  self
395
396
  Extended dataset
396
397
  """
398
+
399
+ # convert ISO index to datetime object
400
+ if isinstance(self.index[0], str):
401
+ self.index = [datetime.datetime.fromisoformat(x) for x in self.index]
402
+
397
403
  tindex = np.array(
398
404
  [
399
405
  cftime.date2num(x, "days since 0001-01-01", calendar="noleap")
gfdlvitals/plot.py CHANGED
@@ -45,6 +45,7 @@ def plot_timeseries(
45
45
  labels=None,
46
46
  legend=True,
47
47
  means=True,
48
+ title="both",
48
49
  ):
49
50
  """Standardized function to make a timeseries plot
50
51
 
@@ -71,6 +72,9 @@ def plot_timeseries(
71
72
  Display a legend for the plot, by default True
72
73
  means : bool, optional
73
74
  Add variable means to the legend, by default True
75
+ title : str, optional
76
+ Specify "varname", "longname", "both", or "none",
77
+ by default "both"
74
78
 
75
79
  Returns
76
80
  -------
@@ -210,12 +214,14 @@ def plot_timeseries(
210
214
  # Text annotations
211
215
 
212
216
  if i == 0:
217
+ _varname = var if (title in ["varname", "both"]) else ""
213
218
  axes_dict[label]["topline_label"] = _ax.text(
214
- 0.01, 1.08, var, ha="left", transform=ax1.transAxes, fontsize=22
219
+ 0.01, 1.08, _varname, ha="left", transform=ax1.transAxes, fontsize=22
215
220
  )
216
221
 
217
222
  _long_name = dset[var].attrs["long_name"]
218
223
  _long_name = f"Sum of {_long_name}" if plottype == "sum" else _long_name
224
+ _long_name = _long_name if (title in ["longname", "both"]) else ""
219
225
 
220
226
  axes_dict[label]["longname_label"] = _ax.text(
221
227
  0.01,
gfdlvitals/version.py CHANGED
@@ -1,3 +1,3 @@
1
1
  """momlevel: version information"""
2
2
 
3
- __version__ = "3.0.6"
3
+ __version__ = "3.0.8"
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: gfdlvitals
3
- Version: 3.0.6
3
+ Version: 3.0.8
4
4
  Summary: Tools for calculating scalar diagnostics from GFDL models
5
5
  Home-page: https://github.com/jkrasting/gfdlvitals
6
6
  Author: John Krasting
@@ -1,10 +1,10 @@
1
1
  docs/source/conf.py,sha256=KWXm19n5XaW1kMIw64FNCuTqAnKDsjkeyQ6MHPQmP9s,2337
2
2
  gfdlvitals/__init__.py,sha256=TS9rlf4WiV2SnMdH-J99noYxJtZGtsU2IsUs17iSxaI,377
3
3
  gfdlvitals/cli.py,sha256=rpsi6yw_k1mGzorvlfHbf_C9CXsU3zJuNxGOur3vLdY,5132
4
- gfdlvitals/extensions.py,sha256=9GUP3Lt2N9n7xy8L9Bm07GtVa5L6lNs_AfQ0BUJGLr0,18403
5
- gfdlvitals/plot.py,sha256=ry0u5IDua_Pa3Fu49BqtlIXaVyf5J1B2HV6Mcfk5yAo,12258
4
+ gfdlvitals/extensions.py,sha256=1HbVBSO1XRypbzHAcmmJxyfyLA7UmGl3m5TdgWlZV2w,18598
5
+ gfdlvitals/plot.py,sha256=X5zB5ChxhuBs6OANMdU-9WH_ZUbGEnaNCWXrhllYpT0,12539
6
6
  gfdlvitals/sample.py,sha256=wvjmx--IbvKKT0AIucw5GE1DCYcVQPtAr7VGY4rMUaA,225
7
- gfdlvitals/version.py,sha256=YnRK4j7bJ-mgKcmhqYtljeQV9rLGpbsHSWUEq9Yh9zQ,59
7
+ gfdlvitals/version.py,sha256=HHiD2B5KAaK9uyx6c2kNqTsx57-98OnzQ5tiaH9iaaM,59
8
8
  gfdlvitals/averagers/__init__.py,sha256=q9VRiraniy0-HwrwOZNw7wmGZEgQxYuSeOvpPMz0dYI,248
9
9
  gfdlvitals/averagers/cubesphere.py,sha256=vxdEr14pwP3kr9NLMRYu6_WiHi-sR3LGy9A72ouIEr0,2170
10
10
  gfdlvitals/averagers/ice.py,sha256=s3Ou1vNkgXa9pNpeoX-HPWoQ40Vut-fDudQQSwDYYek,5622
@@ -50,14 +50,14 @@ gfdlvitals/util/gmeantools.py,sha256=dy-ZeQPv7V5TBWm6EKZtZvrEjtAQJOax3B_gm8vdxcE
50
50
  gfdlvitals/util/merge.py,sha256=pzihnvME1ym2MCyc2BeeQq7Jk10GECSoFBcvTubTY-g,1120
51
51
  gfdlvitals/util/netcdf.py,sha256=CYmP8HQ4iwTvC3HltjF_6_C2FrEEGocWoSiCfHWETQA,2217
52
52
  gfdlvitals/util/xrtools.py,sha256=Dck9YId_aQxGdfOJ54NVpZWPjfyTeWvdiljYz5NmOgc,2708
53
- gfdlvitals-3.0.6.data/scripts/db2nc,sha256=htD-aVKLHGeszfvx_3gH1iYs2bXyCIRRZ_BZYvAjxyQ,5793
54
- gfdlvitals-3.0.6.data/scripts/gfdlvitals,sha256=z7jnQIebmlz6eo0qv0X2UWgVU9TAERJ9a38YIbucVjA,172
55
- gfdlvitals-3.0.6.data/scripts/plotdb,sha256=m_QS96umb3aFIfr1fdfDa81pT8RP-AJ9LhP9Bbr4LQs,1632
53
+ gfdlvitals-3.0.8.data/scripts/db2nc,sha256=htD-aVKLHGeszfvx_3gH1iYs2bXyCIRRZ_BZYvAjxyQ,5793
54
+ gfdlvitals-3.0.8.data/scripts/gfdlvitals,sha256=z7jnQIebmlz6eo0qv0X2UWgVU9TAERJ9a38YIbucVjA,172
55
+ gfdlvitals-3.0.8.data/scripts/plotdb,sha256=m_QS96umb3aFIfr1fdfDa81pT8RP-AJ9LhP9Bbr4LQs,1632
56
56
  scripts/db2nc,sha256=_KqHUowYB8Ff1td6Cb0isWtwlNbnJrMUNri9Ge8kd1E,5807
57
57
  scripts/gfdlvitals,sha256=k5RYzFXWN_2Ckr2mdRbJ-IyMdCQAxuE3RBkGpIXvp3U,186
58
58
  scripts/plotdb,sha256=Rf79UOCwGy9f5HxtgSeiYUiiotS2Bqh-Unr0G4yykyg,1645
59
- gfdlvitals-3.0.6.dist-info/LICENSE,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
60
- gfdlvitals-3.0.6.dist-info/METADATA,sha256=ndlfS9rF8_4CEjjqWv9LtJQpxSieSWatAMRZxOKoBOA,1292
61
- gfdlvitals-3.0.6.dist-info/WHEEL,sha256=2wepM1nk4DS4eFpYrW1TTqPcoGNfHhhO_i5m4cOimbo,92
62
- gfdlvitals-3.0.6.dist-info/top_level.txt,sha256=_nlHTn5dcU38mu0h1NZouDSBQouNvihfTSmua76bwLs,24
63
- gfdlvitals-3.0.6.dist-info/RECORD,,
59
+ gfdlvitals-3.0.8.dist-info/LICENSE,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
60
+ gfdlvitals-3.0.8.dist-info/METADATA,sha256=SeGP0Aloeal3HdaLma8zCnIXipo5dZZEITCzo0Tn8Zs,1292
61
+ gfdlvitals-3.0.8.dist-info/WHEEL,sha256=AtBG6SXL3KF_v0NxLf0ehyVOh0cold-JbJYXNGorC6Q,92
62
+ gfdlvitals-3.0.8.dist-info/top_level.txt,sha256=_nlHTn5dcU38mu0h1NZouDSBQouNvihfTSmua76bwLs,24
63
+ gfdlvitals-3.0.8.dist-info/RECORD,,
@@ -1,5 +1,5 @@
1
1
  Wheel-Version: 1.0
2
- Generator: bdist_wheel (0.38.4)
2
+ Generator: bdist_wheel (0.41.0)
3
3
  Root-Is-Purelib: true
4
4
  Tag: py3-none-any
5
5