CtrlK
BlogDocsLog inGet started
Tessl Logo

tessl/pypi-panel

The powerful data exploration & web app framework for Python.

Pending
Overview
Eval results
Files

pane-system.mddocs/

Pane System

Display components that render various content types including text, images, plots, and integration with popular visualization libraries. Panes automatically detect and display different data formats, providing a unified interface for content presentation.

Capabilities

Text and Markup Panes

Components for displaying formatted text content in various markup languages.

class Str:
    """
    String display pane for plain text content.
    
    Parameters:
    - object: Text string to display
    - **params: Additional parameters
    """

class HTML:
    """
    HTML content pane for rendering HTML markup.
    
    Parameters:
    - object: HTML string or file path
    - **params: Additional parameters
    """

class Markdown:
    """
    Markdown content pane for rendering Markdown text.
    
    Parameters:
    - object: Markdown string or file path
    - extensions: List of Markdown extensions to enable
    - **params: Additional parameters
    """

class JSON:
    """
    JSON data display pane with syntax highlighting.
    
    Parameters:
    - object: JSON object or string
    - depth: Maximum depth to expand objects
    - **params: Additional parameters
    """

class LaTeX:
    """
    LaTeX equation pane for mathematical expressions.
    
    Parameters:
    - object: LaTeX equation string  
    - **params: Additional parameters
    """

Image and Media Panes

Panes for displaying various image formats and media content.

class Image:
    """
    Generic image pane that auto-detects image format.
    
    Parameters:
    - object: Image file path, URL, or binary data
    - width: Image width
    - height: Image height
    - **params: Additional parameters
    """

class PNG:
    """
    PNG image pane for PNG format images.
    
    Parameters:
    - object: PNG image data or file path
    - **params: Additional parameters
    """

class JPG:
    """
    JPEG image pane for JPEG format images.
    
    Parameters:
    - object: JPEG image data or file path
    - **params: Additional parameters
    """

class GIF:
    """
    GIF image pane for animated and static GIF images.
    
    Parameters:
    - object: GIF image data or file path
    - **params: Additional parameters
    """

class SVG:
    """
    SVG image pane for scalable vector graphics.
    
    Parameters:
    - object: SVG markup string or file path
    - **params: Additional parameters
    """

class PDF:
    """
    PDF document pane for displaying PDF files.
    
    Parameters:
    - object: PDF file path or binary data
    - **params: Additional parameters
    """

class Audio:
    """
    Audio player pane for audio file playback.
    
    Parameters:
    - object: Audio file path or URL
    - **params: Additional parameters
    """

class Video:
    """
    Video player pane for video file playback.
    
    Parameters:
    - object: Video file path or URL
    - **params: Additional parameters
    """

Visualization Library Panes

Panes that integrate with popular Python visualization libraries.

class Matplotlib:
    """
    Matplotlib figure pane for displaying matplotlib plots.
    
    Parameters:
    - object: Matplotlib figure object
    - dpi: Resolution for figure rendering
    - **params: Additional parameters
    """

class Bokeh:
    """
    Bokeh plot pane for displaying Bokeh visualizations.
    
    Parameters:
    - object: Bokeh plot object
    - **params: Additional parameters
    """

class Plotly:
    """
    Plotly figure pane for interactive Plotly charts.
    
    Parameters:
    - object: Plotly figure object
    - **params: Additional parameters
    """

class HoloViews:
    """
    HoloViews object pane for HoloViews visualizations.
    
    Parameters:
    - object: HoloViews element or layout
    - **params: Additional parameters
    """

class Interactive:
    """
    HoloViews interactive pane with dynamic controls.
    
    Parameters:
    - object: HoloViews DynamicMap or function
    - **params: Additional parameters
    """

class Vega:
    """
    Vega-Lite pane for Vega-Lite specifications.
    
    Parameters:
    - object: Vega-Lite specification dict
    - **params: Additional parameters
    """

class ECharts:
    """
    Apache ECharts pane for ECharts visualizations.
    
    Parameters:
    - object: ECharts configuration dict
    - **params: Additional parameters
    """

class Perspective:
    """
    Perspective.js pane for interactive data visualization.
    
    Parameters:
    - object: DataFrame or data for visualization
    - **params: Additional parameters
    """

class DeckGL:
    """
    Deck.gl pane for WebGL-powered data visualizations.
    
    Parameters:
    - object: Deck.gl JSON specification
    - **params: Additional parameters
    """

class Vizzu:
    """
    Vizzu animated charts pane for dynamic data storytelling.
    
    Parameters:
    - object: Vizzu chart configuration
    - **params: Additional parameters
    """

class RGGPlot:
    """
    R ggplot2 pane for R-based statistical graphics.
    
    Parameters:  
    - object: R ggplot2 object
    - **params: Additional parameters
    """

Data Science Integration Panes

Panes that integrate with scientific computing and data analysis libraries.

class VTK:
    """
    VTK 3D visualization pane for scientific data.
    
    Parameters:
    - object: VTK render window or dataset
    - **params: Additional parameters
    """

class VTKVolume:
    """
    VTK volume rendering pane for 3D volume data.
    
    Parameters:
    - object: VTK volume data
    - **params: Additional parameters  
    """

class Streamz:
    """
    Streamz stream pane for real-time data streams.
    
    Parameters:
    - object: Streamz stream object
    - **params: Additional parameters
    """

Widget Integration Panes

Panes for integrating external widget libraries and frameworks.

class IPyWidget:
    """
    IPython widget wrapper pane for Jupyter widgets.
    
    Parameters:
    - object: IPython widget object
    - **params: Additional parameters
    """

class IPyLeaflet:
    """
    IPython leaflet maps pane for interactive maps.
    
    Parameters:
    - object: IPython leaflet map object  
    - **params: Additional parameters
    """

class Reacton:
    """
    Reacton component wrapper pane for React-style components.
    
    Parameters:
    - object: Reacton component
    - **params: Additional parameters
    """

class Textual:
    """
    Textual UI pane for terminal-based user interfaces.
    
    Parameters:
    - object: Textual app object
    - **params: Additional parameters
    """

Utility Panes

General-purpose panes for various display needs.

class Alert:
    """
    Alert message pane for notifications and warnings.
    
    Parameters:
    - object: Alert message text
    - alert_type: Alert style ('primary', 'secondary', 'success', 'danger', 'warning', 'info', 'light', 'dark')
    - **params: Additional parameters
    """

class Placeholder:
    """
    Placeholder pane for temporary content during loading.
    
    Parameters:
    - **params: Additional parameters
    """

class YT:
    """
    YouTube video pane for embedding YouTube videos.
    
    Parameters:
    - object: YouTube video URL or ID
    - **params: Additional parameters
    """

Usage Examples

Basic Content Display

import panel as pn

# Display different content types
html_pane = pn.pane.HTML("<h1>Welcome</h1><p>This is HTML content.</p>")
markdown_pane = pn.pane.Markdown("## Markdown Title\nThis is **markdown** content.")
json_pane = pn.pane.JSON({"key": "value", "number": 42})

# Arrange in layout
content = pn.Column(html_pane, markdown_pane, json_pane)

Image Display

# Display images from various sources
local_image = pn.pane.PNG("path/to/image.png")
url_image = pn.pane.Image("https://example.com/image.jpg")
svg_graphic = pn.pane.SVG("<svg>...</svg>")

image_gallery = pn.Row(local_image, url_image, svg_graphic)

Visualization Integration

import matplotlib.pyplot as plt
import plotly.express as px

# Create matplotlib plot
fig, ax = plt.subplots()
ax.plot([1, 2, 3, 4], [1, 4, 2, 3])
mpl_pane = pn.pane.Matplotlib(fig)

# Create plotly plot  
plotly_fig = px.scatter(df, x="x", y="y", color="category")
plotly_pane = pn.pane.Plotly(plotly_fig)

# Combine visualizations
viz_dashboard = pn.Row(mpl_pane, plotly_pane)

Dynamic Content

import param

class DataViewer(param.Parameterized):
    data_source = param.Selector(default='A', objects=['A', 'B', 'C'])
    
    def view(self):
        if self.data_source == 'A':
            return pn.pane.DataFrame(df_a)
        elif self.data_source == 'B':
            return pn.pane.Plotly(plot_b)
        else:
            return pn.pane.HTML("<h2>No data selected</h2>")

viewer = DataViewer()
dynamic_pane = pn.bind(viewer.view, viewer.param.data_source)

Automatic Pane Selection

Panel automatically selects the appropriate pane type based on the object type:

# These will automatically use the correct pane
pn.panel(matplotlib_figure)  # -> Matplotlib pane
pn.panel(plotly_figure)      # -> Plotly pane  
pn.panel(pandas_dataframe)   # -> DataFrame pane
pn.panel("<h1>HTML</h1>")    # -> HTML pane
pn.panel("## Markdown")      # -> Markdown pane

Install with Tessl CLI

npx tessl i tessl/pypi-panel

docs

authentication-system.md

chat-interface.md

core-functions.md

custom-components.md

index.md

layout-components.md

links-system.md

pane-system.md

parameter-integration.md

pipeline-system.md

template-system.md

widget-system.md

tile.json