[plotter] add embeded mode
This commit is contained in:
+21
-13
@@ -29,6 +29,7 @@ import datetime
|
|||||||
|
|
||||||
import matplotlib.pyplot as plt
|
import matplotlib.pyplot as plt
|
||||||
from moviepy.video.io.ImageSequenceClip import ImageSequenceClip
|
from moviepy.video.io.ImageSequenceClip import ImageSequenceClip
|
||||||
|
from mpl_toolkits.axes_grid1.inset_locator import inset_axes
|
||||||
|
|
||||||
import pspec_read
|
import pspec_read
|
||||||
from baseprocessor import Rule, BaseProcessor
|
from baseprocessor import Rule, BaseProcessor
|
||||||
@@ -568,7 +569,6 @@ class Plotter(Aggregator, BaseProcessor):
|
|||||||
center_space=False,
|
center_space=False,
|
||||||
cmap="plasma",
|
cmap="plasma",
|
||||||
norm="log",
|
norm="log",
|
||||||
put_cbar=True,
|
|
||||||
transform=None,
|
transform=None,
|
||||||
vmin=None,
|
vmin=None,
|
||||||
vmax=None,
|
vmax=None,
|
||||||
@@ -576,19 +576,23 @@ class Plotter(Aggregator, BaseProcessor):
|
|||||||
scalebar_size=1,
|
scalebar_size=1,
|
||||||
axes=True,
|
axes=True,
|
||||||
colorbar=True,
|
colorbar=True,
|
||||||
tight_cb=False,
|
embeded=False,
|
||||||
**kwargs,
|
**kwargs,
|
||||||
):
|
):
|
||||||
"""
|
"""
|
||||||
Plot data on a map
|
Plot data on a map
|
||||||
"""
|
"""
|
||||||
|
ax = plt.gca()
|
||||||
ax_h = self._axes_h[ax_los]
|
ax_h = self._axes_h[ax_los]
|
||||||
ax_v = self._axes_v[ax_los]
|
ax_v = self._axes_v[ax_los]
|
||||||
|
|
||||||
im_extent = np.array(self.save.root.maps._v_attrs.im_extent)
|
im_extent = np.array(self.save.root.maps._v_attrs.im_extent)
|
||||||
unit_length = self.save.root._v_attrs["unit_length"]
|
unit_length = self.save.root._v_attrs["unit_length"]
|
||||||
|
|
||||||
|
if embeded:
|
||||||
|
axes = False
|
||||||
|
scalebar = True
|
||||||
|
|
||||||
if center_space:
|
if center_space:
|
||||||
center = self.save.root.maps._v_attrs.center
|
center = self.save.root.maps._v_attrs.center
|
||||||
center_h = center[self._ax_nb[ax_h]]
|
center_h = center[self._ax_nb[ax_h]]
|
||||||
@@ -652,16 +656,14 @@ class Plotter(Aggregator, BaseProcessor):
|
|||||||
plt.yticks([])
|
plt.yticks([])
|
||||||
|
|
||||||
if colorbar:
|
if colorbar:
|
||||||
if tight_cb:
|
if embeded:
|
||||||
ax = plt.gca()
|
cbaxes = inset_axes(ax, width="10%", height="100%", loc="right", borderpad=0)
|
||||||
fig = plt.gcf()
|
cbar = plt.colorbar(cax=cbaxes, orientation='vertical')
|
||||||
cax = fig.add_axes([
|
cbaxes.yaxis.set_ticks_position('left')
|
||||||
ax.get_position().x1,
|
cbaxes.yaxis.set_tick_params(color="white", which="both")
|
||||||
ax.get_position().y0,
|
plt.setp(plt.getp(cbaxes.axes, 'yticklabels'), color="white")
|
||||||
0.03,
|
cbar.outline.set_edgecolor("white")
|
||||||
ax.get_position().height
|
cbaxes.tick_params(axis="y",direction="in", pad=-25)
|
||||||
])
|
|
||||||
cbar = plt.colorbar(cax=cax)
|
|
||||||
else:
|
else:
|
||||||
try:
|
try:
|
||||||
cbar = plt.colorbar(im, cax=plt.gca().cax)
|
cbar = plt.colorbar(im, cax=plt.gca().cax)
|
||||||
@@ -672,6 +674,9 @@ class Plotter(Aggregator, BaseProcessor):
|
|||||||
|
|
||||||
if put_title:
|
if put_title:
|
||||||
title = self.snapshot_title(run, title, nml_key, put_time, unit_time)
|
title = self.snapshot_title(run, title, nml_key, put_time, unit_time)
|
||||||
|
if embeded:
|
||||||
|
ax.text(x=0.05, y=0.95, s=title, color="white", transform=ax.transAxes)
|
||||||
|
else:
|
||||||
plt.title(title)
|
plt.title(title)
|
||||||
|
|
||||||
for i, plot_overlay in enumerate(overlays):
|
for i, plot_overlay in enumerate(overlays):
|
||||||
@@ -690,6 +695,9 @@ class Plotter(Aggregator, BaseProcessor):
|
|||||||
except IndexError:
|
except IndexError:
|
||||||
plot_overlay(ax_los, im_extent)
|
plot_overlay(ax_los, im_extent)
|
||||||
|
|
||||||
|
if embeded:
|
||||||
|
plt.subplots_adjust(left=0, right=1, top=1, bottom=0)
|
||||||
|
|
||||||
return PlotInfo(
|
return PlotInfo(
|
||||||
plot_type=PlotType.IMAGE,
|
plot_type=PlotType.IMAGE,
|
||||||
xaxis_values=np.linspace(im_extent[0], im_extent[1], dmap.shape[0] + 1),
|
xaxis_values=np.linspace(im_extent[0], im_extent[1], dmap.shape[0] + 1),
|
||||||
|
|||||||
Reference in New Issue
Block a user