[gdal-dev] gdal reading in grib values in awrong state?
Brian Case
rush at winkey.org
Thu May 5 17:09:42 EDT 2011
Matt,
At a quick glance I would say pygrib is outputting in kelvin and gdal
Celsius. also it looks like there not in the same order.
Brian
On Thu, 2011-05-05 at 14:57 -0600, mafunk at nmsu.edu wrote:
> Hi,
> i am a little confused. I am using the gdal/python and trying to read
> values from a grib file (i can email the file if needed). I am using
> pygrib to compare against. I do this with the following code:
>
> import struct
>
> import pygrib
>
> from osgeo import gdal
> from osgeo import ogr
> from osgeo import osr
> from osgeo import gdal_array
> from osgeo import gdalconst
> from osgeo.gdalconst import *
>
> import numpy as np
> from numpy import *
>
> #path = "../Data"
> #filename = "%s/ds.temp.bin" % (path)
> filename = "ds.temp.bin"
>
> print "\n\nTesting with pygrib, opening file: %s\n" % (filename)
> grbs = pygrib.open(filename)
> rows = -1
> cols = -1
> grbs.seek(0)
> for grb in grbs:
> print "grb:"
> grb
> print "grb.keys():"
> print grb.keys()
> for key in grb.keys():
> print "\nKey: " + key
> print "data:"
> print grb[key]
>
>
>
> #print "grb['values']"
> #print grb['values']
> #print "grb['codedValues']"
> #print grb['codedValues']
>
> (pg_lats,pg_lons) = grb.latlons()
> pg_rows = pg_lats.shape[0]
> pg_cols = pg_lats.shape[1]
> #print test
> #print lats.shape, lats.min(), lats.max(), lons.shape,
> lons.min(), lons.max()
> #lat_pygrib_arr = []
> print size(pg_lats)
> print "\n\n"
>
>
> ## open with gdal
> ds = gdal.Open(filename)
> band = ds.GetRasterBand(1)
> data = band.ReadAsArray(0,0,band.XSize,band.YSize)#.flatten()
> print "data:"
> print data
>
>
> The data values i get from pygrib are:
> data:
> [[ 294.5 294.5 294.5 ..., 298.31 298.32 298.32]
> [ 294.5 294.5 294.5 ..., 298.32 298.22 298.22]
> [ 294.4 294.4 294.4 ..., 298.22 298.22 298.22]
> ...,
> [ 280.91 280.91 280.81 ..., 264.2 264.3 264.5 ]
> [ 280.81 280.81 280.81 ..., 263.5 263.7 263.9 ]
> [ 280.81 280.81 280.81 ..., 262.8 263. 263.3 ]]
>
> The values i get from gdal are:
> data:
> [[ 7.65999756 7.65999756 7.65999756 ..., -10.35001221 -10.15
> -9.85001221]
> [ 7.65999756 7.65999756 7.65999756 ..., -9.65 -9.45001831
> -9.2500061 ]
> [ 7.76000366 7.76000366 7.65999756 ..., -8.95001831 -8.85001221
> -8.65 ]
> ...,
> [ 21.2499939 21.2499939 21.2499939 ..., 25.07000122 25.07000122
> 25.07000122]
> [ 21.35 21.35 21.35 ..., 25.17000732 25.07000122
> 25.07000122]
> [ 21.35 21.35 21.35 ..., 25.15999756 25.17000732
> 25.17000732]]
>
> Is there anything obvious that i am doing wrong?
>
> thanks
> matt
>
>
> _______________________________________________
> gdal-dev mailing list
> gdal-dev at lists.osgeo.org
> http://lists.osgeo.org/mailman/listinfo/gdal-dev
More information about the gdal-dev
mailing list