MplMesh#
- class discretisedfield.plotting.MplMesh(mesh)#
Methods
matplotlib
plot.__dir__
Default dir() implementation.
__eq__
Return self==value.
__repr__
Return repr(self).
matplotlib
subregions plot.- __call__(*, ax=None, figsize=None, color=['#4c72b0', '#dd8452'], multiplier=None, box_aspect='auto', filename=None, **kwargs)#
matplotlib
plot.If
ax
is not passed,matplotlib.axes.Axes
object is created automatically and the size of a figure can be specified usingfigsize
. The color of lines depicting the region and the discretisation cell can be specified usingcolor
length-2 tuple, where the first element is the colour of the region and the second element is the colour of the discretisation cell. The plot is saved in PDF-format iffilename
is passed.It is often the case that the object size is either small (e.g. on a nanoscale) or very large (e.g. in units of kilometers). Accordingly,
multiplier
can be passed as \(10^{n}\), where \(n\) is a multiple of 3 (…, -6, -3, 0, 3, 6,…). According to that value, the axes will be scaled and appropriate units shown. For instance, ifmultiplier=1e-9
is passed, all axes will be divided by \(1\,\text{nm}\) and \(\text{nm}\) units will be used as axis labels. Ifmultiplier
is not passed, the best one is calculated internally.This method is based on
matplotlib.pyplot.plot
, so any keyword arguments accepted by it can be passed (for instance,linewidth
,linestyle
, etc.).- Parameters:
ax (matplotlib.axes.Axes, optional) – Axes to which the plot is added. Defaults to
None
- axes are created internally.figsize ((2,) tuple, optional) – The size of a created figure if
ax
is not passed. Defaults toNone
.color ((2,) array_like) – A valid
matplotlib
color for lines depicting the region. Defaults to the default color palette.multiplier (numbers.Real, optional) – Axes multiplier. Defaults to
None
.box_aspect (str, array_like (3), optional) – Set the aspect-ratio of the plot. If set to ‘auto’ the aspect ratio is determined from the edge lengths of the region on which the mesh is defined. To set different aspect ratios a tuple can be passed. Defaults to
'auto'
.filename (str, optional) – If filename is passed, the plot is saved. Defaults to
None
.
Examples
Visualising the mesh using
matplotlib
.
>>> import discretisedfield as df ... >>> p1 = (-50e-9, -50e-9, 0) >>> p2 = (50e-9, 50e-9, 10e-9) >>> region = df.Region(p1=p1, p2=p2) >>> mesh = df.Mesh(region=region, n=(50, 50, 5)) ... >>> mesh.mpl()
- subregions(*, ax=None, figsize=None, color=['#4c72b0', '#dd8452', '#55a868', '#c44e52', '#8172b3', '#937860', '#da8bc3', '#8c8c8c', '#ccb974', '#64b5cd'], multiplier=None, show_region=False, box_aspect='auto', filename=None, **kwargs)#
matplotlib
subregions plot.If
ax
is not passed,matplotlib.axes.Axes
object is created automatically and the size of a figure can be specified usingfigsize
. The color of lines depicting subregions and can be specified usingcolor
list. The plot is saved in PDF-format iffilename
is passed. The whole region is only shown ifshow_region=True
.It is often the case that the object size is either small (e.g. on a nanoscale) or very large (e.g. in units of kilometers). Accordingly,
multiplier
can be passed as \(10^{n}\), where \(n\) is a multiple of 3 (…, -6, -3, 0, 3, 6,…). According to that value, the axes will be scaled and appropriate units shown. For instance, ifmultiplier=1e-9
is passed, all axes will be divided by \(1\,\text{nm}\) and \(\text{nm}\) units will be used as axis labels. Ifmultiplier
is not passed, the best one is calculated internally.This method is based on
matplotlib.pyplot.plot
, so any keyword arguments accepted by it can be passed (for instance,linewidth
,linestyle
, etc.).- Parameters:
ax (matplotlib.axes.Axes, optional) – Axes to which the plot is added. Defaults to
None
- axes are created internally.figsize ((2,) tuple, optional) – The size of a created figure if
ax
is not passed. Defaults toNone
.color (array_like) – Subregion colours. Defaults to the default color palette.
multiplier (numbers.Real, optional) – Axes multiplier. Defaults to
None
.show_region (bool, optional) – If
True
also plot the whole region. Defaults toFalse
.box_aspect (str, array_like (3), optional) – Set the aspect-ratio of the plot. If set to ‘auto’ the aspect ratio is determined from the edge lengths of the region on which the mesh is defined. To set different aspect ratios a tuple can be passed. Defaults to
'auto'
.filename (str, optional) – If filename is passed, the plot is saved. Defaults to
None
.
Examples
Visualising subregions using
matplotlib
.
>>> p1 = (0, 0, 0) >>> p2 = (100, 100, 100) >>> n = (10, 10, 10) >>> subregions = {'r1': df.Region(p1=(0, 0, 0), p2=(50, 100, 100)), ... 'r2': df.Region(p1=(50, 0, 0), p2=(100, 100, 100))} >>> mesh = df.Mesh(p1=p1, p2=p2, n=n, subregions=subregions) ... >>> mesh.mpl.subregions()