{"id":596,"date":"2018-11-22T00:57:53","date_gmt":"2018-11-21T15:57:53","guid":{"rendered":"https:\/\/mindtech.jp\/?p=596"},"modified":"2018-11-22T01:02:01","modified_gmt":"2018-11-21T16:02:01","slug":"post-596","status":"publish","type":"post","link":"https:\/\/mindtech.jp\/?p=596","title":{"rendered":"GDAL\u3092\u4f7f\u3063\u3066grib2\u306e\u6c17\u6e29\u3092\u8aad\u3093\u3060\u6642\u306e\u5358\u4f4d\u306f\u6442\u6c0f"},"content":{"rendered":"<p>\u6700\u8fd1\u3001\u6c17\u8c61\u30c7\u30fc\u30bf\u306eGPV MSM\u306egrib2\u5f62\u5f0f\u306e\u30c7\u30fc\u30bf\u3092\u8aad\u307f\u8fbc\u3080\u969b\u306b\u3001Python\u306e<a href=\"https:\/\/www.gdal.org\/\">GDAL<\/a>\u3092\u4f7f\u3046\u3068\u697d\u3060\u3068\u5206\u304b\u3063\u3066\u3001\u3044\u308d\u3044\u308d\u3068\u8a66\u3057\u3066\u3044\u307e\u3059\u3002\u305d\u308c\u307e\u3067\u306f\u81ea\u4f5c\u306e\u30c4\u30fc\u30eb\u3084wgrib2\u306a\u3069\u3067\u52a0\u5de5\u3057\u3066\u3044\u305f\u306e\u3067\u3059\u304c\u3001\u53ef\u8996\u5316\u3060\u3063\u305f\u308a\u6570\u5024\u6f14\u7b97\u3092\u3059\u308b\u969b\u306bPython\u3092\u4f7f\u3046\u969b\u306b\u76f4\u63a5\u8aad\u307f\u8fbc\u307f\u51fa\u6765\u305f\u65b9\u304c\u5727\u5012\u7684\u306b\u697d\u306a\u306e\u3067\u3059\u3088\u306d\u3002<\/p>\n<p>\u4f8b\u3048\u3070\u3001\u3053\u3093\u306a\u611f\u3058<\/p>\n<blockquote><p>from osgeo import gdal<br \/>\ndataset = gdal.Open(&#8220;c:\\data\\Z__C_RJTD_20181106090000_MSM_GPV_Rjp_Lsurf_FH00-15_grib2.bin&#8221;, gdal.GA_ReadOnly)<br \/>\ntarget_band_num = 5 # \u8aad\u307f\u8fbc\u3080\u30e9\u30b9\u30bf\u30fc\u306e\u756a\u53f7<br \/>\nband = dataset.GetRasterBand(target_band_num) # \u8aad\u307f\u8fbc\u3093\u3060\u30e9\u30b9\u30bf\u30fc\u30c7\u30fc\u30bf<\/p><\/blockquote>\n<p>\u51fa\u3066\u304d\u305f\u5024\u3092\u30c1\u30a7\u30c3\u30af\u3057\u3066\u3044\u308b\u3068\u3001\u30d0\u30f3\u30c9\u756a\u53f75\u756a\u306e\u6c17\u6e29\u306e\u5024\u304c\u3069\u3046\u3082\u304a\u304b\u3057\u3044\u3002<\/p>\n<blockquote><p>data_matrix = band.ReadAsArray()<br \/>\nprint(data_matrix)<\/p><\/blockquote>\n<p>\u7d50\u679c\u306f<\/p>\n<blockquote><p>[[-5.97971191 -6.40158691 -6.37033691 &#8230; 7.50466309 7.53591309<br \/>\n7.55153809]<br \/>\n[-6.30783691 -6.40158691 -6.40158691 &#8230; 7.56716309 7.59841309<br \/>\n7.61403809]<br \/>\n[-6.10471191 -6.19846191 -6.21408691 &#8230; 7.62966309 7.64528809<br \/>\n7.66091309]<br \/>\n&#8230;<br \/>\n[25.58278809 25.61403809 25.64528809 &#8230; 27.39528809 27.44216309<br \/>\n27.50466309]<br \/>\n[25.61403809 25.64528809 25.67653809 &#8230; 27.42653809 27.47341309<br \/>\n27.55153809]<br \/>\n[25.64528809 25.69216309 25.72341309 &#8230; 27.45778809 27.52028809<br \/>\n27.58278809]]<\/p><\/blockquote>\n<p>\u5143\u30c7\u30fc\u30bf\u306e\u4ed5\u69d8\u3092\u898b\u308b\u3068\u5358\u4f4d\u306f\u30b1\u30eb\u30d3\u30f3(K)\u306e\u306f\u305a\u306a\u306e\u3067\u3059\u304c\u3001\u3069\u3046\u3082\u304a\u304b\u3057\u3044\u3002\u5024\u306e\u30ec\u30f3\u30b8\u3092\u898b\u3066\u3044\u308b\u3068\u6442\u6c0f\u306b\u63db\u7b97\u3055\u308c\u3066\u3044\u308b\u3088\u3046\u306a\u611f\u3058\u3067\u306f\u3042\u308b\u306e\u3067\u3059\u304c\u3001\u4f55\u3089\u304b\u306e\u8aad\u307f\u53d6\u308a\u7570\u5e38\u3092\u8d77\u3053\u3057\u3066\u3044\u308b\u6050\u308c\u3082\u3042\u308a\u3001\u78ba\u8a8d\u3057\u305f\u3044\u3068\u3053\u308d\u3002<br \/>\n\u4ed6\u306e\u30d0\u30f3\u30c9\u3092\u898b\u3066\u307f\u308b\u3068\u3001\u6c17\u5727\u3060\u3063\u305f\u308a\u98a8\u901f\u3060\u3063\u305f\u308a\u306f\u60f3\u5b9a\u901a\u308a\u3002<\/p>\n<p>\u7d50\u8ad6\u306f\u3001\u81ea\u52d5\u7684\u306b\u6442\u6c0f\u306b\u5909\u63db\u3059\u308b\u4ed5\u69d8\u306e\u3088\u3046\u3067\u3059\u3002GRAL\u306egrib\u30c9\u30e9\u30a4\u30d0\u30fc\u306e\u8aac\u660e\u3001Data units&#8221;\u306e\u7ae0\u3092\u53c2\u7167\u3057\u3066\u304f\u3060\u3055\u3044\u3002<br \/>\n<a href=\"https:\/\/www.gdal.org\/frmt_grib.html\">https:\/\/www.gdal.org\/frmt_grib.html<\/a><\/p>\n<p>\u8a72\u5f53\u7b87\u6240\u3092\u629c\u7c8b\u3057\u307e\u3059\u3068\u3001<\/p>\n<blockquote><p>Data units<br \/>\nInternally GRIB stores values in the units of the international system (ie Metric system). So temperatures must be stored as Kelvin degrees. But on the reading side of the driver, fields with temperatures are exposed in Celsius degrees (unless the GRIB_NORMALIZE_UNITS configuration option is set to NO).<\/p><\/blockquote>\n<p>\u3046\u30fc\u3093\u3001\u306a\u3093\u3068\u7d1b\u3089\u308f\u3057\u3044\u30fb\u30fb\u30fb<\/p>\n<p>\u5ff5\u306e\u305f\u3081\u3001GRIB_NORMALIZE_UNITS\u3092NO\u306b\u3057\u3066\u8aad\u3093\u3067\u307f\u307e\u3057\u3087\u3046\u3002<\/p>\n<blockquote><p>gdal.SetConfigOption(&#8220;GRIB_NORMALIZE_UNITS&#8221;,&#8221;NO&#8221;)<br \/>\ntarget_band_num = 5 # \u8aad\u307f\u8fbc\u3080\u30e9\u30b9\u30bf\u30fc\u306e\u756a\u53f7<br \/>\nband = dataset.GetRasterBand(target_band_num) # \u8aad\u307f\u8fbc\u3093\u3060\u30e9\u30b9\u30bf\u30fc\u30c7\u30fc\u30bf<br \/>\ndata_matrix = band.ReadAsArray()<br \/>\nprint(data_matrix)<\/p><\/blockquote>\n<p>\u7d50\u679c\u306f<\/p>\n<blockquote><p>[[267.17028809 266.74841309 266.77966309 &#8230; 280.65466309 280.68591309<br \/>\n280.70153809]<br \/>\n[266.84216309 266.74841309 266.74841309 &#8230; 280.71716309 280.74841309<br \/>\n280.76403809]<br \/>\n[267.04528809 266.95153809 266.93591309 &#8230; 280.77966309 280.79528809<br \/>\n280.81091309]<br \/>\n&#8230;<br \/>\n[298.73278809 298.76403809 298.79528809 &#8230; 300.54528809 300.59216309<br \/>\n300.65466309]<br \/>\n[298.76403809 298.79528809 298.82653809 &#8230; 300.57653809 300.62341309<br \/>\n300.70153809]<br \/>\n[298.79528809 298.84216309 298.87341309 &#8230; 300.60778809 300.67028809<br \/>\n300.73278809]]<\/p><\/blockquote>\n<p>\u306a\u308b\u307b\u3069\u3001\u78ba\u304b\u306b\u30b1\u30eb\u30d3\u30f3\u3067\u53d6\u5f97\u3067\u304d\u308b\u3088\u3046\u3067\u3059\u306d\u3002<\/p>\n<p>\u53c2\u8003\u306b\u306a\u3063\u305f\u30c1\u30b1\u30c3\u30c8\u3067\u3059\uff1a\u3000Processing Temperature Bands in Grib data results in values in degrees Celsius<br \/>\n<a href=\"https:\/\/trac.osgeo.org\/gdal\/ticket\/3791\">https:\/\/trac.osgeo.org\/gdal\/ticket\/3791<\/a><\/p>\n","protected":false},"excerpt":{"rendered":"<p>\u6700\u8fd1\u3001\u6c17\u8c61\u30c7\u30fc\u30bf\u306eGPV MSM\u306egrib2\u5f62\u5f0f\u306e\u30c7\u30fc\u30bf\u3092\u8aad\u307f\u8fbc\u3080\u969b\u306b\u3001Python\u306eGDAL\u3092\u4f7f\u3046\u3068\u697d\u3060\u3068\u5206\u304b\u3063\u3066\u3001\u3044\u308d\u3044\u308d\u3068\u8a66\u3057\u3066\u3044\u307e\u3059\u3002\u305d\u308c\u307e\u3067\u306f\u81ea\u4f5c\u306e\u30c4\u30fc\u30eb\u3084wgrib2\u306a\u3069\u3067\u52a0\u5de5\u3057\u3066\u3044\u305f\u306e\u3067\u3059\u304c\u3001\u53ef\u8996\u5316\u3060\u3063\u305f\u308a [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":606,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"jetpack_post_was_ever_published":false,"_jetpack_newsletter_access":"","_jetpack_dont_email_post_to_subs":false,"_jetpack_newsletter_tier_id":0,"_jetpack_memberships_contains_paywalled_content":false,"_jetpack_memberships_contains_paid_content":false,"footnotes":"","jetpack_publicize_message":"","jetpack_publicize_feature_enabled":true,"jetpack_social_post_already_shared":true,"jetpack_social_options":{"image_generator_settings":{"template":"highway","default_image_id":0,"font":"","enabled":false},"version":2}},"categories":[6],"tags":[88,87,34],"class_list":["post-596","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-6","tag-gdal","tag-grib2","tag-python"],"jetpack_publicize_connections":[],"jetpack_featured_media_url":"https:\/\/mindtech.jp\/wp-content\/uploads\/2018\/11\/2018-11-22_01h00_59.png","jetpack_sharing_enabled":true,"jetpack_shortlink":"https:\/\/wp.me\/p4rHn0-9C","amp_enabled":true,"_links":{"self":[{"href":"https:\/\/mindtech.jp\/index.php?rest_route=\/wp\/v2\/posts\/596","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/mindtech.jp\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/mindtech.jp\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/mindtech.jp\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/mindtech.jp\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=596"}],"version-history":[{"count":9,"href":"https:\/\/mindtech.jp\/index.php?rest_route=\/wp\/v2\/posts\/596\/revisions"}],"predecessor-version":[{"id":605,"href":"https:\/\/mindtech.jp\/index.php?rest_route=\/wp\/v2\/posts\/596\/revisions\/605"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/mindtech.jp\/index.php?rest_route=\/wp\/v2\/media\/606"}],"wp:attachment":[{"href":"https:\/\/mindtech.jp\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=596"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/mindtech.jp\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=596"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/mindtech.jp\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=596"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}