{ "cells": [ { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "import panel as pn\n", "\n", "pn.extension()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "The ``SVG`` pane embeds an ``.svg`` image file in a panel if provided a local path, or will link to a remote image if provided a URL.\n", "\n", "#### Parameters:\n", "\n", "For details on other options for customizing the component see the [layout](../../how_to/layout/index.md) and [styling](../../how_to/styling/index.md) how-to guides.\n", "\n", "* **``alt_text``** (str, default=None): alt text to add to the image tag. The alt text is shown when a user cannot load or display the image. \n", "* **``embed``** (boolean, default=False): If given a URL to an image this determines whether the image will be embedded as base64 or merely linked to.\n", "* **``fixed_aspect``** (boolean, default=True): Whether the aspect ratio of the image should be forced to be equal.\n", "* **``link_url``** (str, default=None): A link URL to make the image clickable and link to some other website.\n", "* **``encode``** (bool, default=True): Whether to base64 encode the SVG, when enabled SVG links may not work while disabling encoding will prevent image scaling from working.\n", "* **``object``** (str or object): The svg file to display. Can be a string pointing to a local or remote file, or an object with a ``_repr_svg_`` method.\n", "* **``style``** (dict): Dictionary specifying CSS styles\n", "\n", "___" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "The ``SVG`` pane can be pointed at any local or remote ``.svg`` file. If given a URL starting with ``http`` or ``https``, the ``embed`` parameter determines whether the image will be embedded or linked to:" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "pn.pane.SVG('https://panel.holoviz.org/_static/logo_stacked.svg', link_url = \"https://panel.holoviz.org\", width=300)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "We can scale the size of the image by setting a specific fixed `width` or `height`:" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "svg_pane = pn.pane.SVG('https://panel.holoviz.org/_static/logo_stacked.svg', width=150)\n", "svg_pane" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Like any other pane, the ``SVG`` pane can be updated by setting the ``object`` parameter:" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "svg_pane.object = \"https://panel.holoviz.org/_static/jupyterlite.svg\"" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "You can also use a *responsive* `sizing_mode` like `'stretch_width'`." ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "pn.pane.SVG('https://assets.holoviz.org/panel/samples/svg_sample2.svg', sizing_mode='stretch_width')" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Note that by default the aspect ratio of the image is fixed, to override this behavior set `fixed_aspect=False` or provide fixed `width` and `height` values." ] } ], "metadata": { "language_info": { "name": "python", "pygments_lexer": "ipython3" } }, "nbformat": 4, "nbformat_minor": 4 }