The first demo fails if LaTeX is not installed
The first demo fails if LaTeX is not installed.
Code:
emp.vis.new(mode='image') # Not necessary here, just for clarity, 'image' is the default!
emp.vis.imshow(field_disc)
emp.vis.scalebar()
# Create a new figure with two plots
fig, axes = emp.vis.new(nrows=1, ncols=2, aspect=0.3, mode='plot')
x = np.arange(10)
axes[0].plot(x, np.random.rand(10))
axes[1].plot(x, np.random.rand(10))
Long backtrace:
FileNotFoundError Traceback (most recent call last)
c:\users\weber\.conda\envs\empyre\lib\site-packages\matplotlib\texmanager.py in _run_checked_subprocess(self, command, tex)
276 cwd=self.texcache,
--> 277 stderr=subprocess.STDOUT)
278 except FileNotFoundError as exc:
c:\users\weber\.conda\envs\empyre\lib\subprocess.py in check_output(timeout, *popenargs, **kwargs)
355 return run(*popenargs, stdout=PIPE, timeout=timeout, check=True,
--> 356 **kwargs).stdout
357
c:\users\weber\.conda\envs\empyre\lib\subprocess.py in run(input, timeout, check, *popenargs, **kwargs)
422
--> 423 with Popen(*popenargs, **kwargs) as process:
424 try:
c:\users\weber\.conda\envs\empyre\lib\subprocess.py in __init__(self, args, bufsize, executable, stdin, stdout, stderr, preexec_fn, close_fds, shell, cwd, env, universal_newlines, startupinfo, creationflags, restore_signals, start_new_session, pass_fds, encoding, errors)
728 errread, errwrite,
--> 729 restore_signals, start_new_session)
730 except:
c:\users\weber\.conda\envs\empyre\lib\subprocess.py in _execute_child(self, args, executable, preexec_fn, close_fds, pass_fds, cwd, env, startupinfo, creationflags, shell, p2cread, p2cwrite, c2pread, c2pwrite, errread, errwrite, unused_restore_signals, unused_start_new_session)
1016 os.fspath(cwd) if cwd is not None else None,
-> 1017 startupinfo)
1018 finally:
FileNotFoundError: [WinError 2] The system cannot find the file specified
The above exception was the direct cause of the following exception:
RuntimeError Traceback (most recent call last)
c:\users\weber\.conda\envs\empyre\lib\site-packages\IPython\core\formatters.py in __call__(self, obj)
339 pass
340 else:
--> 341 return printer(obj)
342 # Finally look for special method names
343 method = get_real_method(obj, self.print_method)
c:\users\weber\.conda\envs\empyre\lib\site-packages\IPython\core\pylabtools.py in <lambda>(fig)
246
247 if 'png' in formats:
--> 248 png_formatter.for_type(Figure, lambda fig: print_figure(fig, 'png', **kwargs))
249 if 'retina' in formats or 'png2x' in formats:
250 png_formatter.for_type(Figure, lambda fig: retina_figure(fig, **kwargs))
c:\users\weber\.conda\envs\empyre\lib\site-packages\IPython\core\pylabtools.py in print_figure(fig, fmt, bbox_inches, **kwargs)
130 FigureCanvasBase(fig)
131
--> 132 fig.canvas.print_figure(bytes_io, **kw)
133 data = bytes_io.getvalue()
134 if fmt == 'svg':
c:\users\weber\.conda\envs\empyre\lib\site-packages\matplotlib\backend_bases.py in print_figure(self, filename, dpi, facecolor, edgecolor, orientation, format, bbox_inches, pad_inches, bbox_extra_artists, backend, **kwargs)
2191 else suppress())
2192 with ctx:
-> 2193 self.figure.draw(renderer)
2194
2195 bbox_inches = self.figure.get_tightbbox(
c:\users\weber\.conda\envs\empyre\lib\site-packages\matplotlib\artist.py in draw_wrapper(artist, renderer, *args, **kwargs)
39 renderer.start_filter()
40
---> 41 return draw(artist, renderer, *args, **kwargs)
42 finally:
43 if artist.get_agg_filter() is not None:
c:\users\weber\.conda\envs\empyre\lib\site-packages\matplotlib\figure.py in draw(self, renderer)
1852 renderer.open_group('figure', gid=self.get_gid())
1853 if self.get_constrained_layout() and self.axes:
-> 1854 self.execute_constrained_layout(renderer)
1855 if self.get_tight_layout() and self.axes:
1856 try:
c:\users\weber\.conda\envs\empyre\lib\site-packages\matplotlib\figure.py in execute_constrained_layout(self, renderer)
2564 if renderer is None:
2565 renderer = layoutbox.get_renderer(fig)
-> 2566 do_constrained_layout(fig, renderer, h_pad, w_pad, hspace, wspace)
2567
2568 @cbook._delete_parameter("3.2", "renderer")
c:\users\weber\.conda\envs\empyre\lib\site-packages\matplotlib\_constrained_layout.py in do_constrained_layout(fig, renderer, h_pad, w_pad, hspace, wspace)
158 # make margins for each layout box based on the size of
159 # the decorators.
--> 160 _make_layout_margins(ax, renderer, h_pad, w_pad)
161
162 # do layout for suptitle.
c:\users\weber\.conda\envs\empyre\lib\site-packages\matplotlib\_constrained_layout.py in _make_layout_margins(ax, renderer, h_pad, w_pad)
260 pos = ax.get_position(original=True)
261 try:
--> 262 tightbbox = ax.get_tightbbox(renderer=renderer, for_layout_only=True)
263 except TypeError:
264 tightbbox = ax.get_tightbbox(renderer=renderer)
c:\users\weber\.conda\envs\empyre\lib\site-packages\matplotlib\axes\_base.py in get_tightbbox(self, renderer, call_axes_locator, bbox_extra_artists, for_layout_only)
4154 try:
4155 bb_xaxis = self.xaxis.get_tightbbox(
-> 4156 renderer, for_layout_only=for_layout_only)
4157 except TypeError:
4158 # in case downstream library has redefined axis:
c:\users\weber\.conda\envs\empyre\lib\site-packages\matplotlib\axis.py in get_tightbbox(self, renderer, for_layout_only)
1109 ticks_to_draw = self._update_ticks()
1110
-> 1111 self._update_label_position(renderer)
1112
1113 # go back to just this axis's tick labels
c:\users\weber\.conda\envs\empyre\lib\site-packages\matplotlib\axis.py in _update_label_position(self, renderer)
2056 # get bounding boxes for this axis and any siblings
2057 # that have been set by `fig.align_xlabels()`
-> 2058 bboxes, bboxes2 = self._get_tick_boxes_siblings(renderer=renderer)
2059
2060 x, y = self.label.get_position()
c:\users\weber\.conda\envs\empyre\lib\site-packages\matplotlib\axis.py in _get_tick_boxes_siblings(self, renderer)
2041 for nn, axx in enumerate(grp.get_siblings(self.axes)):
2042 ticks_to_draw = axx.xaxis._update_ticks()
-> 2043 tlb, tlb2 = axx.xaxis._get_tick_bboxes(ticks_to_draw, renderer)
2044 bboxes.extend(tlb)
2045 bboxes2.extend(tlb2)
c:\users\weber\.conda\envs\empyre\lib\site-packages\matplotlib\axis.py in _get_tick_bboxes(self, ticks, renderer)
1090 """Return lists of bboxes for ticks' label1's and label2's."""
1091 return ([tick.label1.get_window_extent(renderer)
-> 1092 for tick in ticks if tick.label1.get_visible()],
1093 [tick.label2.get_window_extent(renderer)
1094 for tick in ticks if tick.label2.get_visible()])
c:\users\weber\.conda\envs\empyre\lib\site-packages\matplotlib\axis.py in <listcomp>(.0)
1090 """Return lists of bboxes for ticks' label1's and label2's."""
1091 return ([tick.label1.get_window_extent(renderer)
-> 1092 for tick in ticks if tick.label1.get_visible()],
1093 [tick.label2.get_window_extent(renderer)
1094 for tick in ticks if tick.label2.get_visible()])
c:\users\weber\.conda\envs\empyre\lib\site-packages\matplotlib\text.py in get_window_extent(self, renderer, dpi)
898
899 with cbook._setattr_cm(self.figure, dpi=dpi):
--> 900 bbox, info, descent = self._get_layout(self._renderer)
901 x, y = self.get_unitless_position()
902 x, y = self.get_transform().transform((x, y))
c:\users\weber\.conda\envs\empyre\lib\site-packages\matplotlib\text.py in _get_layout(self, renderer)
285 _, lp_h, lp_d = renderer.get_text_width_height_descent(
286 "lp", self._fontproperties,
--> 287 ismath="TeX" if self.get_usetex() else False)
288 min_dy = (lp_h - lp_d) * self._linespacing
289
c:\users\weber\.conda\envs\empyre\lib\site-packages\matplotlib\backends\backend_agg.py in get_text_width_height_descent(self, s, prop, ismath)
226 fontsize = prop.get_size_in_points()
227 w, h, d = texmanager.get_text_width_height_descent(
--> 228 s, fontsize, renderer=self)
229 return w, h, d
230
c:\users\weber\.conda\envs\empyre\lib\site-packages\matplotlib\texmanager.py in get_text_width_height_descent(self, tex, fontsize, renderer)
421 else:
422 # use dviread.
--> 423 dvifile = self.make_dvi(tex, fontsize)
424 with dviread.Dvi(dvifile, 72 * dpi_fraction) as dvi:
425 page, = dvi
c:\users\weber\.conda\envs\empyre\lib\site-packages\matplotlib\texmanager.py in make_dvi(self, tex, fontsize)
309 self._run_checked_subprocess(
310 ["latex", "-interaction=nonstopmode", "--halt-on-error",
--> 311 texfile], tex)
312 for fname in glob.glob(basefile + '*'):
313 if not fname.endswith(('dvi', 'tex')):
c:\users\weber\.conda\envs\empyre\lib\site-packages\matplotlib\texmanager.py in _run_checked_subprocess(self, command, tex)
279 raise RuntimeError(
280 'Failed to process string with tex because {} could not be '
--> 281 'found'.format(command[0])) from exc
282 except subprocess.CalledProcessError as exc:
283 raise RuntimeError(
RuntimeError: Failed to process string with tex because latex could not be found
<Figure size 720x216 with 2 Axes>