Python matplotlib.backends.backend_agg.FigureCanvasAgg() Examples
The following are 30
code examples of matplotlib.backends.backend_agg.FigureCanvasAgg().
You can vote up the ones you like or vote down the ones you don't like,
and go to the original project or source file by following the links above each example.
You may also want to check out all available functions/classes of the module
matplotlib.backends.backend_agg
, or try the search function
.
Example #1
Source File: _layoutbox.py From GraphicDesignPatternByPython with MIT License | 6 votes |
def get_renderer(fig): if fig._cachedRenderer: renderer = fig._cachedRenderer else: canvas = fig.canvas if canvas and hasattr(canvas, "get_renderer"): renderer = canvas.get_renderer() else: # not sure if this can happen # seems to with PDF... _log.info("constrained_layout : falling back to Agg renderer") from matplotlib.backends.backend_agg import FigureCanvasAgg canvas = FigureCanvasAgg(fig) renderer = canvas.get_renderer() return renderer
Example #2
Source File: backend_webagg_core.py From Mastering-Elasticsearch-7.0 with MIT License | 6 votes |
def __init__(self, *args, **kwargs): backend_agg.FigureCanvasAgg.__init__(self, *args, **kwargs) # Set to True when the renderer contains data that is newer # than the PNG buffer. self._png_is_old = True # Set to True by the `refresh` message so that the next frame # sent to the clients will be a full frame. self._force_full = True # Store the current image mode so that at any point, clients can # request the information. This should be changed by calling # self.set_image_mode(mode) so that the notification can be given # to the connected clients. self._current_image_mode = 'full' # Store the DPI ratio of the browser. This is the scaling that # occurs automatically for all images on a HiDPI display. self._dpi_ratio = 1
Example #3
Source File: tight_layout.py From Mastering-Elasticsearch-7.0 with MIT License | 6 votes |
def get_renderer(fig): if fig._cachedRenderer: renderer = fig._cachedRenderer else: canvas = fig.canvas if canvas and hasattr(canvas, "get_renderer"): renderer = canvas.get_renderer() else: # not sure if this can happen cbook._warn_external("tight_layout : falling back to Agg renderer") from matplotlib.backends.backend_agg import FigureCanvasAgg canvas = FigureCanvasAgg(fig) renderer = canvas.get_renderer() return renderer
Example #4
Source File: events_processors.py From polyaxon with Apache License 2.0 | 6 votes |
def figure_to_image(figure, close=True): """Render matplotlib figure to numpy format. Returns: numpy.array: image in [CHW] order """ if not np: logger.warning(NUMPY_ERROR_MESSAGE) try: import matplotlib.pyplot as plt import matplotlib.backends.backend_agg as plt_backend_agg except ImportError: logger.warning(MATPLOTLIB_ERROR_MESSAGE) canvas = plt_backend_agg.FigureCanvasAgg(figure) canvas.draw() data = np.frombuffer(canvas.buffer_rgba(), dtype=np.uint8) w, h = figure.canvas.get_width_height() image_hwc = data.reshape([h, w, 4])[:, :, 0:3] image_chw = np.moveaxis(image_hwc, source=2, destination=0) if close: plt.close(figure) return image_chw
Example #5
Source File: backend_webagg.py From Computable with MIT License | 6 votes |
def __init__(self, *args, **kwargs): backend_agg.FigureCanvasAgg.__init__(self, *args, **kwargs) # A buffer to hold the PNG data for the last frame. This is # retained so it can be resent to each client without # regenerating it. self._png_buffer = io.BytesIO() # Set to True when the renderer contains data that is newer # than the PNG buffer. self._png_is_old = True # Set to True by the `refresh` message so that the next frame # sent to the clients will be a full frame. self._force_full = True # Set to True when a drawing is in progress to prevent redraw # messages from piling up. self._pending_draw = None
Example #6
Source File: tight_layout.py From ImageFusion with MIT License | 6 votes |
def get_renderer(fig): if fig._cachedRenderer: renderer = fig._cachedRenderer else: canvas = fig.canvas if canvas and hasattr(canvas, "get_renderer"): renderer = canvas.get_renderer() else: # not sure if this can happen warnings.warn("tight_layout : falling back to Agg renderer") from matplotlib.backends.backend_agg import FigureCanvasAgg canvas = FigureCanvasAgg(fig) renderer = canvas.get_renderer() return renderer
Example #7
Source File: tight_layout.py From Computable with MIT License | 6 votes |
def get_renderer(fig): if fig._cachedRenderer: renderer = fig._cachedRenderer else: canvas = fig.canvas if canvas and hasattr(canvas, "get_renderer"): renderer = canvas.get_renderer() else: # not sure if this can happen warnings.warn("tight_layout : falling back to Agg renderer") from matplotlib.backends.backend_agg import FigureCanvasAgg canvas = FigureCanvasAgg(fig) renderer = canvas.get_renderer() return renderer
Example #8
Source File: pyspc_remi.py From pyspc with GNU General Public License v3.0 | 6 votes |
def redraw(self): self.figure = spc(data=self.data) + rules() for chart in self.layer: self.figure + chart() self.figure.make(figsize=(8, 6)) canv = FigureCanvasAgg(self.figure.fig) buf = BytesIO() canv.print_figure(buf, format='png') with self._buflock: if self._buf is not None: self._buf.close() self._buf = buf i = int(time.time() * 1e6) self.attributes['src'] = "/%s/get_image_data?update_index=%d" % (id(self), i) super(MatplotImage, self).redraw()
Example #9
Source File: backend_webagg_core.py From ImageFusion with MIT License | 6 votes |
def __init__(self, *args, **kwargs): backend_agg.FigureCanvasAgg.__init__(self, *args, **kwargs) # A buffer to hold the PNG data for the last frame. This is # retained so it can be resent to each client without # regenerating it. self._png_buffer = io.BytesIO() # Set to True when the renderer contains data that is newer # than the PNG buffer. self._png_is_old = True # Set to True by the `refresh` message so that the next frame # sent to the clients will be a full frame. self._force_full = True # Store the current image mode so that at any point, clients can # request the information. This should be changed by calling # self.set_image_mode(mode) so that the notification can be given # to the connected clients. self._current_image_mode = 'full'
Example #10
Source File: plot.py From lingvo with Apache License 2.0 | 6 votes |
def FigureToSummary(name, fig): """Create tf.Summary proto from matplotlib.figure.Figure. Args: name: Summary name. fig: A matplotlib figure object. Returns: A `tf.Summary` proto containing the figure rendered to an image. """ canvas = backend_agg.FigureCanvasAgg(fig) fig.canvas.draw() ncols, nrows = fig.canvas.get_width_height() png_file = six.BytesIO() canvas.print_figure(png_file) png_str = png_file.getvalue() return tf.Summary(value=[ tf.Summary.Value( tag='%s/image' % name, image=tf.Summary.Image( height=nrows, width=ncols, colorspace=3, encoded_image_string=png_str)) ])
Example #11
Source File: densepose.py From detectron2 with Apache License 2.0 | 6 votes |
def create_visualization_context(self, image_bgr: Image): import matplotlib.pyplot as plt from matplotlib.backends.backend_agg import FigureCanvasAgg as FigureCanvas context = {} context["image_bgr"] = image_bgr dpi = 100 height_inches = float(image_bgr.shape[0]) / dpi width_inches = float(image_bgr.shape[1]) / dpi fig = plt.figure(figsize=(width_inches, height_inches), dpi=dpi) plt.axes([0, 0, 1, 1]) plt.axis("off") context["fig"] = fig canvas = FigureCanvas(fig) context["canvas"] = canvas extent = (0, image_bgr.shape[1], image_bgr.shape[0], 0) plt.imshow(image_bgr[:, :, ::-1], extent=extent) return context
Example #12
Source File: tight_layout.py From matplotlib-4-abaqus with MIT License | 6 votes |
def get_renderer(fig): if fig._cachedRenderer: renderer = fig._cachedRenderer else: canvas = fig.canvas if canvas and hasattr(canvas, "get_renderer"): renderer = canvas.get_renderer() else: # not sure if this can happen warnings.warn("tight_layout : falling back to Agg renderer") from matplotlib.backends.backend_agg import FigureCanvasAgg canvas = FigureCanvasAgg(fig) renderer = canvas.get_renderer() return renderer
Example #13
Source File: backend_webagg.py From matplotlib-4-abaqus with MIT License | 6 votes |
def __init__(self, *args, **kwargs): backend_agg.FigureCanvasAgg.__init__(self, *args, **kwargs) # A buffer to hold the PNG data for the last frame. This is # retained so it can be resent to each client without # regenerating it. self._png_buffer = io.BytesIO() # Set to True when the renderer contains data that is newer # than the PNG buffer. self._png_is_old = True # Set to True by the `refresh` message so that the next frame # sent to the clients will be a full frame. self._force_full = True # Set to True when a drawing is in progress to prevent redraw # messages from piling up. self._pending_draw = None
Example #14
Source File: tf_utils.py From video_prediction with MIT License | 6 votes |
def plot_buf(y): def _plot_buf(y): from matplotlib.backends.backend_agg import FigureCanvasAgg as FigureCanvas from matplotlib.figure import Figure import io fig = Figure(figsize=(3, 3)) canvas = FigureCanvas(fig) ax = fig.add_subplot(111) ax.plot(y) ax.grid(axis='y') fig.tight_layout(pad=0) buf = io.BytesIO() fig.savefig(buf, format='png') buf.seek(0) return buf.getvalue() s = tf.py_func(_plot_buf, [y], tf.string) return s
Example #15
Source File: inference.py From brain-segmentation-pytorch with MIT License | 6 votes |
def plot_dsc(dsc_dist): y_positions = np.arange(len(dsc_dist)) dsc_dist = sorted(dsc_dist.items(), key=lambda x: x[1]) values = [x[1] for x in dsc_dist] labels = [x[0] for x in dsc_dist] labels = ["_".join(l.split("_")[1:-1]) for l in labels] fig = plt.figure(figsize=(12, 8)) canvas = FigureCanvasAgg(fig) plt.barh(y_positions, values, align="center", color="skyblue") plt.yticks(y_positions, labels) plt.xticks(np.arange(0.0, 1.0, 0.1)) plt.xlim([0.0, 1.0]) plt.gca().axvline(np.mean(values), color="tomato", linewidth=2) plt.gca().axvline(np.median(values), color="forestgreen", linewidth=2) plt.xlabel("Dice coefficient", fontsize="x-large") plt.gca().xaxis.grid(color="silver", alpha=0.5, linestyle="--", linewidth=1) plt.tight_layout() canvas.draw() plt.close() s, (width, height) = canvas.print_to_buffer() return np.fromstring(s, np.uint8).reshape((height, width, 4))
Example #16
Source File: backend_webagg_core.py From GraphicDesignPatternByPython with MIT License | 6 votes |
def __init__(self, *args, **kwargs): backend_agg.FigureCanvasAgg.__init__(self, *args, **kwargs) # Set to True when the renderer contains data that is newer # than the PNG buffer. self._png_is_old = True # Set to True by the `refresh` message so that the next frame # sent to the clients will be a full frame. self._force_full = True # Store the current image mode so that at any point, clients can # request the information. This should be changed by calling # self.set_image_mode(mode) so that the notification can be given # to the connected clients. self._current_image_mode = 'full' # Store the DPI ratio of the browser. This is the scaling that # occurs automatically for all images on a HiDPI display. self._dpi_ratio = 1
Example #17
Source File: tight_layout.py From GraphicDesignPatternByPython with MIT License | 6 votes |
def get_renderer(fig): if fig._cachedRenderer: renderer = fig._cachedRenderer else: canvas = fig.canvas if canvas and hasattr(canvas, "get_renderer"): renderer = canvas.get_renderer() else: # not sure if this can happen warnings.warn("tight_layout : falling back to Agg renderer") from matplotlib.backends.backend_agg import FigureCanvasAgg canvas = FigureCanvasAgg(fig) renderer = canvas.get_renderer() return renderer
Example #18
Source File: tight_layout.py From python3_ios with BSD 3-Clause "New" or "Revised" License | 6 votes |
def get_renderer(fig): if fig._cachedRenderer: renderer = fig._cachedRenderer else: canvas = fig.canvas if canvas and hasattr(canvas, "get_renderer"): renderer = canvas.get_renderer() else: # not sure if this can happen warnings.warn("tight_layout : falling back to Agg renderer") from matplotlib.backends.backend_agg import FigureCanvasAgg canvas = FigureCanvasAgg(fig) renderer = canvas.get_renderer() return renderer
Example #19
Source File: backend_webagg_core.py From python3_ios with BSD 3-Clause "New" or "Revised" License | 6 votes |
def __init__(self, *args, **kwargs): backend_agg.FigureCanvasAgg.__init__(self, *args, **kwargs) # Set to True when the renderer contains data that is newer # than the PNG buffer. self._png_is_old = True # Set to True by the `refresh` message so that the next frame # sent to the clients will be a full frame. self._force_full = True # Store the current image mode so that at any point, clients can # request the information. This should be changed by calling # self.set_image_mode(mode) so that the notification can be given # to the connected clients. self._current_image_mode = 'full' # Store the DPI ratio of the browser. This is the scaling that # occurs automatically for all images on a HiDPI display. self._dpi_ratio = 1
Example #20
Source File: backend_webagg_core.py From neural-network-animation with MIT License | 6 votes |
def __init__(self, *args, **kwargs): backend_agg.FigureCanvasAgg.__init__(self, *args, **kwargs) # A buffer to hold the PNG data for the last frame. This is # retained so it can be resent to each client without # regenerating it. self._png_buffer = io.BytesIO() # Set to True when the renderer contains data that is newer # than the PNG buffer. self._png_is_old = True # Set to True by the `refresh` message so that the next frame # sent to the clients will be a full frame. self._force_full = True # Store the current image mode so that at any point, clients can # request the information. This should be changed by calling # self.set_image_mode(mode) so that the notification can be given # to the connected clients. self._current_image_mode = 'full'
Example #21
Source File: densepose.py From detectron2 with Apache License 2.0 | 6 votes |
def create_visualization_context(self, image_bgr: Image): import matplotlib.pyplot as plt from matplotlib.backends.backend_agg import FigureCanvasAgg as FigureCanvas context = {} context["image_bgr"] = image_bgr dpi = 100 height_inches = float(image_bgr.shape[0]) / dpi width_inches = float(image_bgr.shape[1]) / dpi fig = plt.figure(figsize=(width_inches, height_inches), dpi=dpi) plt.axes([0, 0, 1, 1]) plt.axis("off") context["fig"] = fig canvas = FigureCanvas(fig) context["canvas"] = canvas extent = (0, image_bgr.shape[1], image_bgr.shape[0], 0) plt.imshow(image_bgr[:, :, ::-1], extent=extent) return context
Example #22
Source File: tight_layout.py From neural-network-animation with MIT License | 6 votes |
def get_renderer(fig): if fig._cachedRenderer: renderer = fig._cachedRenderer else: canvas = fig.canvas if canvas and hasattr(canvas, "get_renderer"): renderer = canvas.get_renderer() else: # not sure if this can happen warnings.warn("tight_layout : falling back to Agg renderer") from matplotlib.backends.backend_agg import FigureCanvasAgg canvas = FigureCanvasAgg(fig) renderer = canvas.get_renderer() return renderer
Example #23
Source File: exporter.py From mplexporter with BSD 3-Clause "New" or "Revised" License | 6 votes |
def run(self, fig): """ Run the exporter on the given figure Parmeters --------- fig : matplotlib.Figure instance The figure to export """ # Calling savefig executes the draw() command, putting elements # in the correct place. if fig.canvas is None: canvas = FigureCanvasAgg(fig) fig.savefig(io.BytesIO(), format='png', dpi=fig.dpi) if self.close_mpl: import matplotlib.pyplot as plt plt.close(fig) self.crawl_fig(fig)
Example #24
Source File: generative_adversarial_network.py From ml-on-gcp with Apache License 2.0 | 6 votes |
def plot_generated_images(images, fname): """Save a synthetic image as a PNG file. Args: images: samples of synthetic images generated by the generative network. fname: Python `str`, filename to save the plot to. """ fig = figure.Figure(figsize=(4, 4)) canvas = backend_agg.FigureCanvasAgg(fig) for i, image in enumerate(images): ax = fig.add_subplot(4, 4, i + 1) ax.axis('off') ax.set_xticklabels([]) ax.set_yticklabels([]) ax.imshow(image.reshape(IMAGE_SHAPE[:-1]), cmap='Greys_r') fig.tight_layout() fig.subplots_adjust(wspace=0.05, hspace=0.05) canvas.print_figure(fname, format='png')
Example #25
Source File: vq_vae.py From ml-on-gcp with Apache License 2.0 | 6 votes |
def save_imgs(x, fname): """Helper method to save a grid of images to a PNG file. Args: x: A numpy array of shape [n_images, height, width]. fname: The filename to write to (including extension). """ n = x.shape[0] fig = figure.Figure(figsize=(n, 1), frameon=False) canvas = backend_agg.FigureCanvasAgg(fig) for i in range(n): ax = fig.add_subplot(1, n, i+1) ax.imshow(x[i].squeeze(), interpolation="none", cmap=cm.get_cmap("binary")) ax.axis("off") canvas.print_figure(fname, format="png") print("saved %s" % fname)
Example #26
Source File: _layoutbox.py From python3_ios with BSD 3-Clause "New" or "Revised" License | 6 votes |
def get_renderer(fig): if fig._cachedRenderer: renderer = fig._cachedRenderer else: canvas = fig.canvas if canvas and hasattr(canvas, "get_renderer"): renderer = canvas.get_renderer() else: # not sure if this can happen # seems to with PDF... _log.info("constrained_layout : falling back to Agg renderer") from matplotlib.backends.backend_agg import FigureCanvasAgg canvas = FigureCanvasAgg(fig) renderer = canvas.get_renderer() return renderer
Example #27
Source File: wasm_backend.py From pyodide with Mozilla Public License 2.0 | 5 votes |
def __init__(self, *args, **kwargs): backend_agg.FigureCanvasAgg.__init__(self, *args, **kwargs) self._idle_scheduled = False self._id = "matplotlib_" + hex(id(self))[2:] self._title = "" self._ratio = 1 matplotlib_figure_styles = self._add_matplotlib_styles() if document.getElementById("matplotlib-figure-styles") is None: document.head.appendChild(matplotlib_figure_styles)
Example #28
Source File: aceoptimize.py From gandissect with MIT License | 5 votes |
def plot_heatmap(output_filename, data, size=256): fig = Figure(figsize=(1, 1), dpi=size) canvas = FigureCanvas(fig) gs = gridspec.GridSpec(1, 1, left=0.0, right=1.0, bottom=0.0, top=1.0) ax = fig.add_subplot(gs[0]) ax.set_axis_off() ax.imshow(data, cmap='hot', aspect='equal', interpolation='nearest', vmin=-1, vmax=1) canvas.print_figure(output_filename, format='png')
Example #29
Source File: aceoptimize.py From gandissect with MIT License | 5 votes |
def draw_heatmap(output_filename, data, size=256): fig = Figure(figsize=(1, 1), dpi=size) canvas = FigureCanvas(fig) gs = gridspec.GridSpec(1, 1, left=0.0, right=1.0, bottom=0.0, top=1.0) ax = fig.add_subplot(gs[0]) ax.set_axis_off() ax.imshow(data, cmap='hot', aspect='equal', interpolation='nearest', vmin=-1, vmax=1) canvas.draw() # draw the canvas, cache the renderer image = numpy.fromstring(canvas.tostring_rgb(), dtype='uint8').reshape( (size, size, 3)) return image
Example #30
Source File: performance.py From FlatCAM with MIT License | 5 votes |
def large_plot(data): x, y, area, colors = data fig = Figure(figsize=(10, 10), dpi=80) axes = fig.add_axes([0.0, 0.0, 1.0, 1.0], alpha=1.0) axes.set_frame_on(False) axes.set_xticks([]) axes.set_yticks([]) # axes.set_xlim(0, 10) # axes.set_ylim(0, 10) axes.scatter(x, y, s=area, c=colors, alpha=0.5) axes.set_xlim(0, 10) axes.set_ylim(0, 10) canvas = FigureCanvasAgg(fig) canvas.draw() # canvas = FigureCanvasQTAgg(fig) # buf = canvas.tostring_rgb() buf = fig.canvas.tostring_rgb() ncols, nrows = fig.canvas.get_width_height() img = np.fromstring(buf, dtype=np.uint8).reshape(nrows, ncols, 3) return img