NOTICE: This version of the NSF Unidata web site (archive.unidata.ucar.edu) is no longer being updated.
Current content can be found at unidata.ucar.edu.

To learn about what's going on, see About the Archive Site.

Re: [python-users] Siphon/MetPy: Invalid height data read from U of Wyoming RAOBs

  • To: Geoffrey Lewen <geoffreylewen@xxxxxxxxx>
  • Subject: Re: [python-users] Siphon/MetPy: Invalid height data read from U of Wyoming RAOBs
  • From: Ryan May <rmay@xxxxxxxx>
  • Date: Tue, 23 May 2023 13:39:21 -0600
Greetings!

Thanks for the report. It looks like the problem is that this sounding has
a lot of levels, which pushes the larger height values beyond the 100 rows
that `pandas.read_fwf()` uses by default to autodetect appropriate column
widths. This has been fixed in https://github.com/Unidata/siphon/pull/696,
which will be released with siphon 0.9.1 (release date TBD). In the
meantime, if you need the fix available sooner, you can install siphon
directly from git with:

pip install git+https://github.com/Unidata/siphon

Cheers!

Ryan

On Mon, May 22, 2023 at 11:24 PM Geoffrey Lewen <geoffreylewen@xxxxxxxxx>
wrote:

> Hello,
>
> I recently encountered a situation in which the data returned by Siphon’s
> client for the University of Wyoming Upper Air archive contained invalid
> height data. (Please see below.)
>
> Thanks for any assistance or advice with this issue,
>
> Geoff
>
>
>
> -------------------------------------------------------------------------------
>
> SUMMARY:    This involves the 5/22/2023 12Z RAOB for station OUN.  The
> heights appeared to be the "actual heights modulo 10km”.   The data in
> the U of Wyoming web form does not show any issue, nor is there a problem
> with the height when using Siphon to read the sounding from Iowa State.
>
> My MetPy/Siphon environment is
>
> •   MetPy 1.5.0
> •   Siphon 0.9
>
>
> Here is a simple example of code to reproduce the situation:
>
>
> -------------------------------------------------------------------------------
>
> from datetime import datetime
> import matplotlib.pyplot as plt
> import numpy as np
> from siphon.simplewebservice.wyoming import WyomingUpperAir
>
> Year = 2023
> Month = 5
> Day = 22
> Hour = 12
> date=datetime(Year,Month,Day,Hour)
> station = 'OUN'
>
> #  Read height data
> df = WyomingUpperAir.request_data(date, station)
> Z1 = df['height'].values
>
> #  Data extracted manually from the University of Wyoming Web form
>
> WebForm = np.array([  345,   397,   440,   493,   537,   564,   635,
> 716,   779,
>          806,   870,   880,   907,   963,  1028,  1075,  1094,  1122,
>         1170,  1208,  1227,  1266,  1295,  1324,  1421,  1471,  1520,
>         1540,  1822,  1863,  1966,  2019,  2103,  2720,  2879,  2925,
>         3097,  3132,  3261,  3356,  3392,  3416,  3452,  3536,  3561,
>         3609,  3658,  3832,  3920,  4072,  4227,  4292,  4410,  4450,
>         4477,  4517,  4584,  4611,  4624,  4705,  4954,  5067,  5110,
>         5153,  5181,  5326,  5385,  5414,  5518,  5577,  5592,  5607,
>         5623,  5683,  5698,  5759,  5790,  5976,  6262,  6391,  6506,
>         6523,  6589,  6656,  6774,  6911,  6962,  7014,  7032,  7067,
>         7102,  7119,  7137,  7261,  7279,  7297,  7333,  7369,  7442,
>         7460,  7478,  7534,  7645,  7683,  7701,  7739,  7834,  8065,
>         8085,  8104,  8144,  8203,  8243,  8322,  8383,  8423,  8444,
>         8464,  8650,  8713,  8839,  8882,  8946,  8989,  9142,  9186,
>         9341,  9409,  9432,  9454,  9477,  9500,  9523,  9754,  9801,
>         9872,  9968, 10040, 10138, 10187, 10336, 10512, 10720, 10800,
>        10907, 10934, 10988, 11015, 11070, 11407, 11465, 11581, 11640,
>        11880, 11911, 11942, 12003, 12066, 12160, 12286, 12351, 12416,
>        12754, 13112, 13611, 13814, 13980, 14421, 14607, 15094, 15352,
>        15564, 15784, 15896, 16068, 16550])
>
> #  Simple plot of the data.  The third plot shows the "modulo 10k" of the
> Webform data for comparison.
>
> fig, axes = plt.subplots(nrows=1, ncols=3, figsize=(10, 5))
> axes[0].plot(z1)
> axes[0].set_title('UWYO-siphon')
> axes[1].plot(WebForm)
> axes[1].set_title('UWYO-WebForm')
> axes[2].plot(WebForm % 10000)
> axes[2].set_title('WebForm modulo 10k')
> fig.tight_layout()
>
>
> -------------------------------------------------------------------------------
>
> Output:
>
>
> [image: +P88Jbv7ya7TIAAAAAElFTkSuQmCC.png]
>
> _______________________________________________
> NOTE: All exchanges posted to Unidata maintained email lists are
> recorded in the Unidata inquiry tracking system and made publicly
> available through the web.  Users who post to any of the lists we
> maintain are reminded to remove any personal information that they
> do not want to be made public.
>
>
> python-users mailing list
> python-users@xxxxxxxxxxxxxxxx
> For list information, to unsubscribe, or change your membership options,
> visit: https://www.unidata.ucar.edu/mailing_lists/
>


-- 
Ryan May
Unidata Deputy Director
UCAR
Boulder, CO

PNG image

  • 2023 messages navigation, sorted by:
    1. Thread
    2. Subject
    3. Author
    4. Date
    5. ↑ Table Of Contents
  • Search the python-users archives: