This post is to report a possible bug related to plotting when going through the Tutorial “Run JEDI-FV3 in a Container” running on a server running CentOS:
https://jointcenterforsatellitedataassimilation-jedi-docs.readthedocs-hosted.com/en/latest/learning/tutorials/level1/run-jedi.html
The error occurred here during Step 4: View the Increment. Here is the error:
Blockquote
Singularity> fv3jedi_plot_field.x --inputfile=3denvar.latlon.20180415_000000z.nc4 --fieldname=T --layer=50
Opening 3denvar.latlon.20180415_000000z.nc4 for reading
Grid dimensions 96 x 49 x 64
Reading layer 50 from field T
QStandardPaths: XDG_RUNTIME_DIR not set, defaulting to ‘/tmp/runtime-mjmurphy’
Saving figure as 3denvar.latlon.20180415_000000z_T_layer-50.png
/usr/local/miniconda3/lib/python3.8/site-packages/cartopy/io/init.py:260: DownloadWarning: Downloading: https://naciscdn.org/naturalearth/110m/physical/ne_110m_coastline.zip
warnings.warn(‘Downloading: {}’.format(url), DownloadWarning)
Traceback (most recent call last):
File “/usr/local/miniconda3/lib/python3.8/urllib/request.py”, line 1350, in do_open
h.request(req.get_method(), req.selector, req.data, headers,
File “/usr/local/miniconda3/lib/python3.8/http/client.py”, line 1255, in request
self._send_request(method, url, body, headers, encode_chunked)
File “/usr/local/miniconda3/lib/python3.8/http/client.py”, line 1301, in _send_request
self.endheaders(body, encode_chunked=encode_chunked)
File “/usr/local/miniconda3/lib/python3.8/http/client.py”, line 1250, in endheaders
self._send_output(message_body, encode_chunked=encode_chunked)
File “/usr/local/miniconda3/lib/python3.8/http/client.py”, line 1010, in _send_output
self.send(msg)
File “/usr/local/miniconda3/lib/python3.8/http/client.py”, line 950, in send
self.connect()
File “/usr/local/miniconda3/lib/python3.8/http/client.py”, line 1417, in connect
super().connect()
File “/usr/local/miniconda3/lib/python3.8/http/client.py”, line 921, in connect
self.sock = self._create_connection(
File “/usr/local/miniconda3/lib/python3.8/socket.py”, line 787, in create_connection
for res in getaddrinfo(host, port, 0, SOCK_STREAM):
File “/usr/local/miniconda3/lib/python3.8/socket.py”, line 918, in getaddrinfo
for res in _socket.getaddrinfo(host, port, family, type, proto, flags):
socket.gaierror: [Errno -3] Temporary failure in name resolution
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File “/opt/jedi/build/bin/fv3jedi_plot_field.x”, line 141, in
main()
File “/usr/local/miniconda3/lib/python3.8/site-packages/click/core.py”, line 1137, in call
return self.main(*args, **kwargs)
File “/usr/local/miniconda3/lib/python3.8/site-packages/click/core.py”, line 1062, in main
rv = self.invoke(ctx)
File “/usr/local/miniconda3/lib/python3.8/site-packages/click/core.py”, line 1404, in invoke
return ctx.invoke(self.callback, **ctx.params)
File “/usr/local/miniconda3/lib/python3.8/site-packages/click/core.py”, line 763, in invoke
return __callback(*args, **kwargs)
File “/opt/jedi/build/bin/fv3jedi_plot_field.x”, line 133, in main
plt.savefig(outfile)
File “/usr/local/miniconda3/lib/python3.8/site-packages/matplotlib/pyplot.py”, line 859, in savefig
res = fig.savefig(*args, **kwargs)
File “/usr/local/miniconda3/lib/python3.8/site-packages/matplotlib/figure.py”, line 2311, in savefig
self.canvas.print_figure(fname, **kwargs)
File “/usr/local/miniconda3/lib/python3.8/site-packages/matplotlib/backends/backend_qt5agg.py”, line 81, in print_figure
super().print_figure(*args, **kwargs)
File “/usr/local/miniconda3/lib/python3.8/site-packages/matplotlib/backend_bases.py”, line 2210, in print_figure
result = print_method(
File “/usr/local/miniconda3/lib/python3.8/site-packages/matplotlib/backend_bases.py”, line 1639, in wrapper
return func(*args, **kwargs)
File “/usr/local/miniconda3/lib/python3.8/site-packages/matplotlib/backends/backend_agg.py”, line 509, in print_png
FigureCanvasAgg.draw(self)
File “/usr/local/miniconda3/lib/python3.8/site-packages/matplotlib/backends/backend_agg.py”, line 407, in draw
self.figure.draw(self.renderer)
File “/usr/local/miniconda3/lib/python3.8/site-packages/matplotlib/artist.py”, line 41, in draw_wrapper
return draw(artist, renderer, *args, **kwargs)
File “/usr/local/miniconda3/lib/python3.8/site-packages/matplotlib/figure.py”, line 1863, in draw
mimage._draw_list_compositing_images(
File “/usr/local/miniconda3/lib/python3.8/site-packages/matplotlib/image.py”, line 131, in _draw_list_compositing_images
a.draw(renderer)
File “/usr/local/miniconda3/lib/python3.8/site-packages/matplotlib/artist.py”, line 41, in draw_wrapper
return draw(artist, renderer, *args, **kwargs)
File “/usr/local/miniconda3/lib/python3.8/site-packages/cartopy/mpl/geoaxes.py”, line 479, in draw
return matplotlib.axes.Axes.draw(self, renderer=renderer, **kwargs)
File “/usr/local/miniconda3/lib/python3.8/site-packages/matplotlib/artist.py”, line 41, in draw_wrapper
return draw(artist, renderer, *args, **kwargs)
File “/usr/local/miniconda3/lib/python3.8/site-packages/matplotlib/cbook/deprecation.py”, line 411, in wrapper
return func(*inner_args, **inner_kwargs)
File “/usr/local/miniconda3/lib/python3.8/site-packages/matplotlib/axes/_base.py”, line 2747, in draw
mimage._draw_list_compositing_images(renderer, self, artists)
File “/usr/local/miniconda3/lib/python3.8/site-packages/matplotlib/image.py”, line 131, in _draw_list_compositing_images
a.draw(renderer)
File “/usr/local/miniconda3/lib/python3.8/site-packages/matplotlib/artist.py”, line 41, in draw_wrapper
return draw(artist, renderer, *args, **kwargs)
File “/usr/local/miniconda3/lib/python3.8/site-packages/cartopy/mpl/feature_artist.py”, line 155, in draw
geoms = self._feature.intersecting_geometries(extent)
File “/usr/local/miniconda3/lib/python3.8/site-packages/cartopy/feature/init.py”, line 302, in intersecting_geometries
return super(NaturalEarthFeature, self).intersecting_geometries(extent)
File “/usr/local/miniconda3/lib/python3.8/site-packages/cartopy/feature/init.py”, line 110, in intersecting_geometries
return (geom for geom in self.geometries() if
File “/usr/local/miniconda3/lib/python3.8/site-packages/cartopy/feature/init.py”, line 284, in geometries
path = shapereader.natural_earth(resolution=self.scale,
File “/usr/local/miniconda3/lib/python3.8/site-packages/cartopy/io/shapereader.py”, line 295, in natural_earth
return ne_downloader.path(format_dict)
File “/usr/local/miniconda3/lib/python3.8/site-packages/cartopy/io/init.py”, line 222, in path
result_path = self.acquire_resource(target_path, format_dict)
File “/usr/local/miniconda3/lib/python3.8/site-packages/cartopy/io/shapereader.py”, line 350, in acquire_resource
shapefile_online = self._urlopen(url)
File “/usr/local/miniconda3/lib/python3.8/site-packages/cartopy/io/init.py”, line 261, in _urlopen
return urlopen(url)
File “/usr/local/miniconda3/lib/python3.8/urllib/request.py”, line 222, in urlopen
return opener.open(url, data, timeout)
File “/usr/local/miniconda3/lib/python3.8/urllib/request.py”, line 525, in open
response = self._open(req, data)
File “/usr/local/miniconda3/lib/python3.8/urllib/request.py”, line 542, in _open
result = self._call_chain(self.handle_open, protocol, protocol +
File “/usr/local/miniconda3/lib/python3.8/urllib/request.py”, line 502, in _call_chain
result = func(*args)
File “/usr/local/miniconda3/lib/python3.8/urllib/request.py”, line 1393, in https_open
return self.do_open(http.client.HTTPSConnection, req,
File “/usr/local/miniconda3/lib/python3.8/urllib/request.py”, line 1353, in do_open
raise URLError(err)
urllib.error.URLError: <urlopen error [Errno -3] Temporary failure in name resolution>