View#
- class lumen.views.base.View(*, controls, download, field, limit, loading_indicator, pipeline, rerender, selection_group, title, name)#
View components provide a visual representation for the data returned by a
lumen.source.base.Source
orlumen.pipeline.Pipeline
.The View must return a Panel object or an object that can be rendered by Panel. The base class provides methods which query the the provided
lumen.pipeline.Pipeline
.Subclasses should use these methods to query the data and return a Viewable Panel object in the get_panel method.
Parameters#
type: list[Any]
default: []
Parameters that should be exposed as widgets in the UI.
type: lumen.downloads.Download
default: Download()
The download objects determines whether and how the source tablescan be downloaded.
type: Any
default: None
Possible values: ``
The field being visualized.
type: int
default: None
bounds: (0, None)
Limits the number of rows that are rendered.
type: bool
default: True
Whether to display a loading indicator on the View when thePipeline is refreshing the data.
type: str
default: 'View'
String identifier for this object.
type: lumen.Pipeline
default: None
The data pipeline that drives the View.
type: bool
default: False
An event that is triggered whenever the View requests a re-render.
type: str
default: None
Declares a selection group the plot is part of. This featurerequires the separate HoloViews library.
type: str
default: None
The title of the view.
Methods#
- View.get_data()#
Queries the Source for the specified table applying any filters and transformations specified on the View. Unlike get_value this should be used when multiple return values are expected.
- Returns:
The queried table after filtering and transformations are applied.
- Return type:
DataFrame
- View.get_panel() Viewable #
Constructs and returns a Panel object which will represent a view of the queried table.
- Returns:
A Panel Viewable object representing a current representation of the queried table.
- Return type:
panel.Viewable
- View.get_value(field: str | None = None)#
Queries the Source for the data associated with a particular field applying any filters and transformations specified on the View. Unlike get_data this method returns a single scalar value associated with the field and should therefore only be used if only a single.
- Parameters:
field (str (optional)) – The field from the table to return; if None uses field defined on the View.
- Returns:
A single scalar value representing the current value of the queried field.
- Return type:
object
- View.servable(title: str | None = None, location: bool | 'Location' = True, area: str = 'main', target: str | None = None) Viewable #
Serves the object or adds it to the configured pn.state.template if in a panel serve context, writes to the DOM if in a pyodide context and returns the Panel object to allow it to display itself in a notebook context.
- Parameters:
title (str) – A string title to give the Document (if served as an app)
location (boolean or panel.io.location.Location) – Whether to create a Location component to observe and set the URL location.
area (str (deprecated)) – The area of a template to add the component too. Only has an effect if pn.config.template has been set.
target (str) – Target area to write to. If a template has been configured on pn.config.template this refers to the target area in the template while in pyodide this refers to the ID of the DOM node to write to.
- Return type:
The Panel object itself
- View.show(title: str | None = None, port: int = 0, address: str | None = None, websocket_origin: str | None = None, threaded: bool = False, verbose: bool = True, open: bool = True, location: bool | 'Location' = True, **kwargs) threading.Thread | 'Server' #
Starts a Bokeh server and displays the Viewable in a new tab.
- Parameters:
title (str | None) – A string title to give the Document (if served as an app)
port (int (optional, default=0)) – Allows specifying a specific port
address (str) – The address the server should listen on for HTTP requests.
websocket_origin (str or list(str) (optional)) – A list of hosts that can connect to the websocket. This is typically required when embedding a server app in an external web site. If None, “localhost” is used.
threaded (boolean (optional, default=False)) – Whether to launch the Server on a separate thread, allowing interactive use.
verbose (boolean (optional, default=True)) – Whether to print the address and port
open (boolean (optional, default=True)) – Whether to open the server in a new browser tab
location (boolean or panel.io.location.Location) – Whether to create a Location component to observe and set the URL location.
- Returns:
server – Returns the Bokeh server instance or the thread the server was launched on (if threaded=True)
- Return type:
bokeh.server.Server or panel.io.server.StoppableThread
- View.to_spec(context: Dict[str, Any] | None = None) Dict[str, Any] #
Exports the full specification to reconstruct this component.
- Parameters:
context (Dict[str, Any]) – Context contains the specification of all previously serialized components, e.g. to allow resolving of references.
- Return type:
Declarative specification of this component.
- View.update(*events: Event, invalidate_cache: bool = True)#
Triggers an update in the View.
- Parameters:
events (tuple) – param events that may trigger an update.
invalidate_cache (bool) – Whether to clear the View’s cache.
Types#
Panel
views provide a way to declaratively wrap a Panel component.
StringView
renders the latest value of the field as a HTML string.
IndicatorView
renders the latest field value as a Panel Indicator
.
hvOverlayView
allows overlaying a list of layers consisting of
Table
renders data using the powerful Panel Tabulator
component.
DownloadView
renders a button that allows downloading data as CSV, Excel, and parquet files.
PerspectiveView
renders data into a Perspective widget.
AltairView
provides a declarative way to render Altair charts.
hvPlotUIView
displays provides a component for exploring datasets interactively.
hvPlotView
renders the queried data as a bokeh plot generated with hvPlot.