windows下wgrib/wgrib2和python读取grib2数据
windows下没有api可以直接读grib或者grib2的数据。所以下载wgrib或者wgrib2来读grib数据。wgrib可以读grib1格式(.grb)的数据,wgrib2可以读grib2格式(.grib)的数据,根据不同格式的数据选择下载wgrib或者wgrib2
1.wgrib和wgrib2下载
- wgrib,下载地址:ftp://ftp.cpc.ncep.noaa.gov/wd51we/wgrib
- wgrib2,下载地址:ftp://ftp.cpc.ncep.noaa.gov/wd51we/wgrib2(64位系统用 ftp://ftp.cpc.ncep.noaa.gov/wd51we/wgrib2/Windows_64/)
找到对应的版本,下载速度比较慢,请耐心等待。。。
下载完成后把所有文件放到同一个文件夹下,比如wgrib文件可以都放在wgrib文件夹下,wgrib2文件可以都放在wgrib2文件夹下
2.wgrib和wgrib2设置
wgrib和wgrib2是不需要安装的,只需要在环境变量里进行设置。
右键此电脑,点击属性
点击高级系统设置
点击环境变量
在系统变量里找到Path,点击编辑
点击新建,然后把wgrib和wgrib2的路径输入进去
3.验证是否设置成功
同时按下windows和R键,输入cmd,点击确定
输入wgrib2
显示出wgrib2的使用说明,说明设置成功
4. 读取grib和grib2数据
4.1使用wgrib/wgrib2读取数据
-else else else-elseif_fs elif X elseif X (fixed string) conditional execution-elseif_n elif X elseif (inv numbers in range), X=(start:end:step)-elseif_rec elif X elseif (record numbers in range), X=(start:end:step)-elseif_reg elif X elseif rpn registers defined, X = A, A:B, A:B:C, etc A = register number-elseif elif X elseif X (POSIX regular expression) conditional on match-endif endif endif-if if X if X (POSIX regular expression), conditional execution on match-if_fs if X if X (fixed string), conditional execution on match-if_n if X if (inv numbers in range), X=(start:end:step)-if_rec if X if (record numbers in range), X=(start:end:step)-if_reg if X if rpn registers defined, X = A, A:B, A:B:C, etc A = register number-not_if if X not_if X (regular expression), conditional execution on not match-not_if_fs if X if X (fixed string) does not match, conditional execution up to next output/fi-0xSec inv X Hex dump of section X (0..8)-aerosol_size inv optical properties of an aerosol-aerosol_wavelength inv optical properties of an aerosol-bitmap inv bitmap mode-center inv center-checksum inv X CRC checksum of section X (0..8), whole message (X = -1/message) or (X=data)-disc inv discipline (code table 0.0)-domain inv find rectangular domain for g2ctl/GrADS plots-end_ft inv verf time = reference_time + forecast_time + stat. proc time (YYYYMMDDHH) (same as -vt)-end_FT inv verf time = reference_time + forecast_time + stat. proc time (YYYYMMDDHHMMSS) (same as -VT)-ens inv ensemble information-ext_name inv extended name, var+qualifiers-ftime inv either ftime1 or ftime2 dep on version_ftime-ftime1 inv forecast time-ftime2 inv timestamp -- will replace -ftime in the future TESTING-ftn_api_fn0 inv n npnts nx ny msg_no submsg i11,5(1x,i11)-full_name inv extended name, var+qualifiers-gdt inv contents of Grid Definition Template (g2c)-get_byte inv X Y Z get bytes in Section X, Octet Y, number of bytes Z (decimal format)-get_hex inv X Y Z get bytes in Section X, Octet Y, number of bytes Z (bytes in hexadecimal format)-get_ieee inv X Y Z get ieee float in Section X, Octet Y, number of floats Z-get_int inv X Y Z get 4-byte ints in Section X, Octet Y, number of ints Z-get_int2 inv X Y Z get 2-byte ints in Section X, Octet Y, number of ints Z-grib_max_bits inv maximum bits used in grib encoding-grid inv grid definition-grid_id inv show values from grid_id-hybrid inv shows vertical coordinate parameters from Sec4-ij inv X Y value of field at grid(X,Y) X=1,..,nx Y=1,..,ny (WxText enabled)-ijlat inv X Y lat,lon and grid value at grid(X,Y) X=1,..,nx Y=1,..,ny (WxText enabled)-ilat inv X lat,lon and grid value at Xth grid point, X=1,..,npnts (WxText enabled)-JMA inv inventory for JMA locally defined PDT-lev inv level (code table 4.5)-ll2i inv X Y x=lon y=lat, converts to (i), 1..ndata-ll2ij inv X Y x=lon y=lat, converts lon-lat to (i,j) using gctpc-lon inv X Y value at grid point nearest lon=X lat=Y (WxText enabled)-match_inv inv inventory used by -match, -not, -if and -not_if-Match_inv inv same as -match_inv except d=YYYYMMDDHH <-> D=YYYYMMDDHHmmss-max inv print maximum value-min inv print minimum value-misc inv variable name qualifiers like chemical, ensemble, probability, etc-MM inv reference time MM-model_version_date inv prints model date code-n inv prints out inventory number-N_ens inv number of ensemble members-nl inv inserts new line into inventory-nlons inv number of longitudes for each latitude-npts inv number of grid points-nxny inv nx and ny of grid-packing inv shows the packing mode (use -v for more details)-pdt inv Product Definition Table (Code Table 4.0)-precision inv precision of packing-print inv X inserts string (X) into inventory-prob inv probability information-process inv Process (code table 4.3)-processid inv process id (locally defined)-proj4_ij2ll inv X Y X=x Y=y, converts to (i,j) to lon-lat using proj.4 (experimental) we:sn-proj4_ll2i inv X Y x=lon y=lat, converts to (i) using proj.4 (experimental) 1..ndata-proj4_ll2ij inv X Y x=lon y=lat, converts lon-lat (i,j) using proj.4 (experimental)-radius inv radius of Earth-range inv print out location of record in bytes, 0 = first byte-RT inv type of reference Time-s inv simple inventory-S inv simple inventory with minutes and seconds (subject to change)-s2 inv simple inventory .. for testing ftime2-scale inv scale for packing-scaling inv scaling for packing (old format)-scan inv scan order of grid-Sec_len inv length of various grib sections-Sec0 inv contents of section0-Sec3 inv contents of section 3 (Grid Definition Section)-Sec4 inv Sec 4 values (Product definition section)-Sec5 inv Sec 5 values (Data representation section)-Sec6 inv show bit-map section-spatial_proc inv show spacial processing, pdt=4.15-spectral_bands inv spectral bands for satellite, pdt=4.31 or 4.32-start_ft inv verf time = reference_time + forecast_time (YYYYMMDDHH) : no stat. proc time-start_FT inv verf time = reference_time + forecast_time (YYYYMMDDHHMMSS) - no stat. proc time-stats inv statistical summary of data values-subcenter inv subcenter-t inv reference time YYYYMMDDHH, -v2 for alt format-T inv reference time YYYYMMDDHHMMSS-table inv parameter table-timer inv reads OpenMP timer-unix_time inv print unix timestamp for rt & vt-V inv diagnostic output-var inv short variable name-varX inv raw variable name - discipline mastertab localtab center parmcat parmnum-vector_dir inv grid or earth relative winds-verf inv simple inventory using verification time-vt inv verf time = reference_time + forecast_time, -v2 for alt format-VT inv verf time = reference_time + forecast_time (YYYYMMDDHHMMSS)-warn_old_g2 inv warn if old g2lib would have problem-wave_partition inv ocean surface wave partition (pdt=4.52)-YY inv reference time YYYY-inv_f77 inv> X Y Z match inventory written to Z with character*(Y) and X=(bin,ieee)-last inv> X write last inv item to file X-last0 inv> X write last inv item to beginning of file X-nl_out inv> X write new line in file X-print_out inv> X Y prints string (X) in file (Y)-s_out inv> X simple inventory written to X-big_endian misc sets ieee output to big endian (default is big endian)-box_ave misc X Y Z box average X=odd integer (lon) Y=odd integer (lat) critical_weight-colon misc X replace item deliminator (:) with X-config misc shows the configuration-count misc prints count, number times this -count was processed-end misc stop after first (sub)message (save time)-error_final misc X Y Z error if at end X=count Y=ne,eq,le,lt,gt,ge Z=integer-fix_CFSv2_fcst misc X Y Z fixes CFSv2 monthly fcst X=daily or 00/06/12/18 Y=pert no. Z=number ens fcsts v1.0-fix_ncep misc fix ncep PDT=8 headers produced by cnvgrib-gctpc misc X X=0,1 use gctpc library (default=1)-grid_changes misc prints number of grid changes-grid_def misc read lon and lat data from grib file -- experimental-h misc help, shows common options-header misc f77 header or nx-ny header in text output (default)-help misc X help [search string|all], -help all, shows all options-ijundefine misc X Y Z sets grid point values to undefined X=(in-box|out-box) Y=ix0:ix1 Z=iy0:iy1 ix=(1..nx) iy=(1..ny)-import_bin misc X read binary file (X) for data-import_grib misc X read grib2 file (X) for data-import_grib_fs misc X Y read grib2 file (Y) sequentially for record that matches X (fixed string)-import_ieee misc X read ieee file (X) for data-import_netcdf misc X Y Z TESTING X=file Y=var Z=hyper-cube specification-import_text misc X read text file (X) for data-limit misc X stops after X fields decoded-little_endian misc sets ieee output to little endian (default is big endian)-mem_del misc X delete mem file X-mem_final misc X Y write mem file X to file Y at cleanup step-mem_init misc X Y read mem file X from file Y (on initialization)-ndate misc X Y X=date Y=dt print date + dt-ndates misc X Y Z X=date0 Y=(date1|dt1) Z=dt2 for (date=date0; date<(date1|date0+dt1); date+=dt2) print date-ndates_fmt misc X X = C format for ndates option-new_grid_interpolation misc X new_grid interpolation X=bilinear,bicubic,neighbor,budget-new_grid_ipopt misc X new_grid ipopt values X=i1:i2..:iN N <= 20-new_grid_vectors misc X change fields to vector interpolate: X=none,default,UGRD:VGRD,(U:V list)-new_grid_winds misc X new_grid wind orientation: X = grid, earth (no default)-no_header misc no f77 header or nx-ny header in text output-proj4 misc X X=0,1 use proj4 library for geolocation (testing)-rewind_final misc X rewinds file X on cleanup step if already opened, CW2-rewind_proc misc X rewinds file X on processing step if already opened, CW2-rpn misc X reverse polish notation calculator-rpn_rcl misc X data = register X .. same as -rpn rcl_X .. no geolocation calc needed-rpn_sto misc X register X = data.. same as -rpn sto_X .. no geolocation calc needed-scaling_0001 misc changes scaling testing (sample)-set misc X Y set X = Y, X=local_table,etc (help: -set help help)-set_ave misc X set ave/acc .. only use on pdt=4.0/4.8 (old code)-set_bin_prec misc X X use X bits and ECMWF-style grib encoding-set_bitmap misc X use bitmap when creating complex packed files X=1/0-set_byte misc X Y Z set bytes in Section X, Octet Y, bytes Z (a|a:b:c)-set_date misc X changes date code, X=(+|-)N(hr|dy|mo|yr), YYYYMMDDHHmmSS-set_ens_num misc X Y Z convert PDT 0,1 -> 1, 8,11 -> 11, X=code table 4.6 Y=pert num Z=num ens members -1=No Change-set_ensm_derived_fcst misc X Y convert PDT 0,1,2 -> 2, 8,11,12 -> 12, X=code table 4.7 Y=num ens members-set_ftime misc X either set_ftime1 or set_ftime2 dep on version_ftime-set_ftime1 misc X set ftime-set_ftime2 misc X set ftime2 .. will be replace -set_ftime/ave in the future -- TESTING ----set_grib_max_bits misc X sets scaling so number of bits does not exceed N in (new) grib output-set_grib_type misc X set grib type = jpeg, simple, ieee, complex(1|2|3), aec, same-set_hex misc X Y Z set bytes in Section X, Octet Y, bytes Z (a|a:b:c|abc) in hexadecimal-set_ieee misc X Y Z set ieee float in Section X, Octet Y, floats Z (a|a:b:c)-set_ijval misc X Y Z sets grid point value X=ix Y=iy Z=val-set_int misc X Y Z set 4-byte ints in Section X, Octet Y, signed integers Z (a|a:b:c)-set_int2 misc X Y Z set 2-byte ints in Section X, Octet Y, signed integers Z (a|a:b:c)-set_ival misc X Y sets grid point value X=i1:i2:.. Y=va1:val2:.. grid[i1] = val1,etc-set_lev misc X changes level code .. not complete-set_metadata misc X read meta-data for grib writing from file X-set_metadata_str misc X X = metadata string-set_pdt misc X makes new pdt, X=(+)PDT_number or X=(+)PDT_number:size of PDT in octets, +=copy metadata-set_percentile misc X convert PDT 0..6 -> 6, 8..15 -> 10, X=percentile (0..100)-set_prob misc 5 args X/Y forecasts Z=Code Table 4.9 A=lower limit B=upper limit-set_radius misc X set radius of Earth X= 0,2,4,5,6,8,9 (Code Table 3.2), 1:radius , 7:major:minor-set_scaling misc X Y set decimal scaling=X/same binary scaling=Y/same new grib messages-set_sec_size misc X Y resizes section , X=section number, Y=size in octets, DANGEROUS-set_ts_dates misc X Y Z changes date code for time series X=YYYYMMDDHH(mmss) Y=dtime Z=#msgs/date-set_var misc X changes variable name-start_timer misc starts OpenMP timer-status misc X X X=file-submsg misc X process submessage X (0=process all messages)-sys misc X run system/shell command, X=shell command-text_col misc X number of columns on text output-text_fmt misc X format for text output (C)-udf misc X Y run UDF, X=program+optional_args, Y=return file-udf_arg misc X Y add grib-data to UDF argument file, X=file Y=name-undefine misc X Y Z sets grid point values to undefined X=(in-box|out-box) Y=lon0:lon1 Z=lat0:lat1-undefine_val misc X grid point set to undefined if X=val or X=low:high-v misc verbose (v=1)-v0 misc not verbose (v=0)-v2 misc really verbose (v=2)-version misc print version--version misc print version-AAIG out writes Ascii ArcInfo Grid file, lat-lon grid only (alpha)-AAIGlong out writes Ascii ArcInfo Grid file, lat-lon grid only long-name *.asc (alpha)-ave out X Y average X=time step Y=output v2-ave_var out X Y average/std dev/min/max X=time step, Y=output-ave0 out X Y average X=time step, Y=output grib file needs file is special order-bin out X write binary data to X-cress_lola out X..Z,A lon-lat grid values X=lon0:nlon:dlon Y=lat0:nlat:dlat Z=file A=radius1:radius2:..:radiusN-csv out X make comma separated file, X=file (WxText enabled)-csv_long out X make comma separated file, X=file (WxText enabled)-cubeface2global out X Y write faces X as global cubed grid to Y: X=list of faces to exclude-ens_processing out X Y ave/min/max/spread X=output Y=future use-fcst_ave out X Y average X=time step Y=output v2-fcst_ave0 out X Y average X=time step, Y=output grib file needs file is special order-fi out depreceated-grib out X writes GRIB record (one submessage) to X-GRIB out X writes entire GRIB record (all submessages)-grib_ieee out X writes data[] to X.grb, X.head, X.tail, and X.h-grib_out out X writes decoded/modified data in grib-2 format to file X-grib_out_irr out X Y writes irregular grid grib (GDT=130 not adopted) X=(all|defined) Y=(output file)-grib_out_irr2 out 5 args writes irregular grid grib GDT 101 X=npnts Y=grid_no Z=grid_ref A=UUID B=(output file)-gridout out X text file with grid: i j lat lon (1st record)-ieee out X write (default:big-endian) IEEE data to X-ijbox out X..Z,A grid values in bounding box X=i1:i2[:di] Y=j1:j2[:dj] Z=file A=[bin|text|spread]-ijsmall_grib out X Y Z make small domain grib file X=ix0:ix1 Y=iy0:iy1 Z=file-irr_grid out X Y Z make irregular grid (GDT=130 not adopted), nearest neighbor, X=lon-lat list Y=radius (km) Z=output grib file-lola out X..Z,A lon-lat grid values X=lon0:nlon:dlon Y=lat0:nlat:dlat Z=file A=[bin|text|spread|grib]-merge_fcst out X Y merge forecast ave/acc/min/max X=number to intervals to merge (0=every) Y=output grib file-mysql out 5 args H=[host] U=[user] P=[password] D=[db] T=[table]-mysql_dump out 7 args H=[host] U=[user] P=[password] D=[db] T=[table] W=[western_lons:0|1] PV=[remove unlikely:0|1]-mysql_speed out 7 args H=[host] U=[user] P=[password] D=[db] T=[table] W=[western_lons:0|1] PV=[remove unlikely:0|1]-ncep_norm out X normalize NCEP-type ave/acc X=output grib file-ncep_uv out X combine U and V fields into one message like NCEP operations-netcdf out X write netcdf data to X-new_grid out X..Z,A bilinear interpolate: X=projection Y=x0:nx:dx Z=y0:ny:dy A=grib_file alpha-reduced_gaussian_grid out X Y Z reduced Gaussian grid, X=outputfile Y=-1 Z=(neighbor|linear)[-extrapolate]-small_grib out X Y Z make small domain grib file X=lonW:lonE Y=latS:latN Z=file-spread out X write text - spread sheet format into X (WxText enabled)-submsg_uv out X combine vector fields into one message-text out X write text data into X-time_processing out X..Z,A average X=CodeTable 4.10 Y=CodeTable 4.11 Z=time step A=output-tosubmsg out X convert GRIB message to submessage and write to file X-wind_dir out X calculate wind direction, X = output gribfile (direction in degrees, 0=wind from north, 90=wind from east)-wind_speed out X calculate wind speed, X = output gribfile (U then V in datafile)-wind_uv out X calculate UGRD/VGRD from speed/dir, X = output gribfile-alarm init X terminate after X seconds-append init append mode, write to existing output files-crlf init make the end of the inventory a crlf (windows) instead of newline (unix)-d init X dump message X (n or n.m), only 1 -d allowed-egrep init X egrep X | wgrib2 (X is POSIX regular expression)-egrep_v init X egrep -v X | wgrib2 (X is POSIX regular expression)-eof_bin init X Y send (binary) integer to file upon EOF: X=file Y=integer-eof_string init X Y send string to file upon EOF: X=file Y=string-err_bin init X Y send (binary) integer to file upon err exit: X=file Y=integer-err_string init X Y send string to file upon err exit: X=file Y=string-fgrep init X fgrep X | wgrib2-fgrep_v init X fgrep -v X | wgrib2-fix_ncep_2 init ncep bug fix 2, probability observation < -ve number-fix_ncep_3 init sets flag to fix ncep bug 3 (constant fields)-fix_ncep_4 init fixes NCEP grib2 files where DX and DY are undefined-for init X process record numbers in range, X=(start:end:step), only one -for allowed-for_n init X process inv numbers in range, X=(start:end:step), only one -for allowed-g2clib init X X=0/1/2 0=WMO std 1=emulate g2clib 2=use g2clib-i init read Inventory from stdin-i_file init X read Inventory from file-inv init X write inventory to X-match init X process data that matches X (POSIX regular expression)-match_fs init X process data that matches X (fixed string)-match_inv_add init X Y Z add new options to match_inventory-nc_grads init require netcdf file to be grads v1.9b4 compatible (fixed time step only)-nc_nlev init X netcdf, X = max LEV dimension for {TIME,LEV,LAT,LON} data-nc_pack init X pack/check limits of all NEW input variables, X=min:max[:byte|short|float]-nc_table init X X is conversion_to_netcdf_table file name-nc_time init X netcdf, [[-]yyyymmddhhnnss]:[dt{s[ec]|m[in]|h[our]|d[ay]}], [-] is for time alignment only-nc3 init use netcdf3 (classic)-nc4 init use netcdf4 (compressed, controlled endianness etc)-ncpu init X number of threads, default is environment variable OMP_NUM_THREADS/number of cpus-no_append init not append mode, write to new output files (default)-no_nc_grads init netcdf file may be not grads v1.9b4 compatible, variable time step-no_nc_pack init no packing in netcdf for NEW variables-no_nc_table init disable previously defined conversion_to_netcdf_table-no_nc_time init netcdf, disable previously defined initial or relative date and time step-not init X process data that does not match X (POSIX regular expression)-not_fs init X process data that does not match X (fixed string)-one_line init puts all on one line (makes into inventory format)-order init X decoded data in X (raw|we:sn|we:ns) order, we:sn is default-persistent init X makes file X persistent if already opened (default on open), CW2-rewind_init init X rewinds file X on initialization if already opened, CW2-set_ext_name init X X=0/1 extended name on/off-set_regex init X set regex mode X = 0:extended regex (default) 1:pattern 2:extended regex & quote metacharacters-set_version_ftime init X set version of ftime X=1, 2-tigge init use modified-TIGGE grib table-transient init X make file X transient, CW2
以上为wgrib2的使用说明
Inventory/diagnostic-output selections-s/-v short/verbose inventory-V diagnostic output (not inventory)(none) regular inventoryOptions-PDS/-PDS10 print PDS in hex/decimal-GDS/-GDS10 print GDS in hex/decimal-verf print forecast verification time-ncep_opn/-ncep_rean default T62 NCEP grib table-4yr print year using 4 digits-min print minutes-ncep_ens ensemble info encoded in ncep format
Decoding GRIB selection-d [record number|all] decode record number-p [byte position] decode record at byte position-i decode controlled by stdin (inventory list)(none) no decodingOptions-text/-ieee/-grib/-bin convert to text/ieee/grib/bin (default)-nh/-h output will have no headers/headers (default)-dwdgrib output dwd headers, grib (do not append)-H output will include PDS and GDS (-bin/-ieee only)-append append to output file-o [file] output file name, 'dump' is defaultMisc-cmc [file] use NCEP tables for CMC (dangerous)
以上为wgrib的使用说明
wgrib和wgrib2大部分语句是通用的,有部分不一样,使用的时候请注意。
wgrib2 D:\\data.grib -v0
使用 -v0命令查看数据目录
拿到该数据时不确定里面有什么数据,通过 -v命令查看目录可以看到有一个表示属性的字段“SOIL_M”,土壤湿度,于是新建一个csv文件以SOIL_M作为字段名,使用 -match命令进行匹配
输入SOIL_M并保存为csv格式
wgrib2 D:\\data.grib -match ':SOIL_M' -csv D:\\abc.csv
使用 -match命令进行匹配, -csv命令将grib数据写入csv
注意wgrib没有 -csv命令,无法将数据直接写入csv
与SOIL_M匹配的数据就被写入csv文件了
如果有其他属性也可以匹配其他属性,如TMP温度
因为不知道怎么读表头,所以猜测前两列为时间,第三列表示土壤湿度,第四列表示测量说明,第五、六列为经纬度,第七列为土壤湿度。
4.2使用python调用os.system读取数据
import osdef re():#转到wgrib2工具目录os.chdir("D:\\wgrib2")#读取目录os.system("wgrib2 D:\\data.grib -v")#匹配SOIL_Mos.system("wgrib2 D:\\data.grib -match ':SOIL_M' -csv D:\\abc.csv")return Noneif __name__ == "__main__":re()
windows下wgrib/wgrib2和python读取grib2数据相关推荐
- python读取grib2数据_python读取grib grib2气象数据
GRIB是WMO开发的一种用于交换和存储规则分布数据的二进制文件格式,主要用来表示数值天气预报的产品资料.现行的GRIB 码版本有GRIB1 和GRIB2 两种格式.由于小编只接触过GRIB1数据,所 ...
- windows python读取grib2数据
一.环境准备 (1).python3环境 (2).wgirb工具(用于读取grib1文件),下载地址: ftp://ftp.cpc.ncep.noaa.gov/wd51we/wgrib (3).wg ...
- python批量读取grib_windows python读取grib2数据
一.环境准备 (1).python3环境 (3).wgirb2工具(用于读取grib2文件),下载地址:ftp://ftp.cpc.ncep.noaa.gov/wd51we/wgrib2 二.环境测试 ...
- python读取grib2数据_python2 解析 Grib/Grib2数据
python2 解析 Grib/Grib2数据 sudoapt-get installgfortran cmake zlib1g-dev libpng-dev jasper libjpeg-dev l ...
- python读取grib2数据_用Python加载grib2文件
我正在尝试加载grib2文件,我不确定文件是问题还是我试图加载它们的方式.在 这些文件是从here中提取的(我不是从这里下载的,而是从同事的文件夹中复制的,所以它们应该是相同的文件-,但是我也尝试插入 ...
- python在windows和linux系统下批量读取grib2数据
python在windows系统和linux系统读取grib或者grib2数据所用的库不一样,下面分别细说. 1.python在linux系统下批量读取grib或grib2数据 linux系统对pyt ...
- Windows上python读取grib2文件(不用Linux)
最近在网上下载的NCEP的fnl数据,发现只有grib2文件格式.因为现在处理数据使用的更多的是python,matlab一类的.网上一搜python读取grib文件需要依赖pygrib库,pygri ...
- python批量读取grib_Windows下Python读取GRIB数据
之前写了一篇<基于Python的GRIB数据可视化>的文章,好多博友在评论里问我Windows系统下如何读取GRIB数据,在这里我做一下说明. 一.在Windows下Python为什么无法 ...
- python读取grib文件_Windows下Python读取GRIB数据
之前写了一篇<基于Python的GRIB数据可视化>的文章,好多博友在评论里问我Windows系统下如何读取GRIB数据,在这里我做一下说明. 一.在Windows下Python为什么无法 ...
最新文章
- python time.time()计算代码运行时间
- 学习java得一些笔记(5)
- Python之日志处理(logging模块)
- 【Qt】modbus之串口模式读操作
- BDD怎样帮助你解决沟通问题并增进协作
- SpringBoot 小技巧
- xgboost算法_回归建模的时代已结束,算法XGBoost统治机器学习世界
- undefined reference to symbol' pthread_create@@GLIBC_2.2.5'
- java手机号正则校验工具类
- Tcl 语言——过程与字符串匹配篇
- BMW 与 Harvester 的云与边缘之旅
- 又要数数小绵羊(C++) kkmd66
- 日本动漫作家和其部分作品
- 考研高数 专题5:泰勒公式及其应用(皮亚诺型余项/局部)(拉格朗日余项/整体)
- Python之turtle库画各种有趣的图及源码(更新中)
- 机器人学的数理基础知识
- 全网首发,大众奥迪领驭帕萨特DIY数码碟盒增加USB和蓝牙播放音乐功能使用原车接口无损改装
- JavaSSM笔记(一)Spring基础(JavaBean)(IoC理论)(AOP)(使用注解开发)
- 基于c++和 opengl 鞋子定制系统
- 魔百盒M401a刷机