Skip to main content

Streamlit component for EIDOS framework

Project description

streamlit-eidos

Streamlit component for EIDOS visualisation with bi-directional transport for events.

Installation instructions

pip install streamlit-eidos

Usage

There is one component function st_eidos with function signature:

component_value=st_eidos(eidos, height=500)

Parameters

eidos : pydeck.Deck instance
    The pydeck map to render.
key : str, default "deck_gl"
    The key for the component. This must be unique for each map in the app.
height : int, default 500
    The height of the map in pixels.
events : list, default None
    A dict of events to listen for. Can be one or more of:
    - 'click'
    - 'hover'
    - 'drag'
description : dict, default None
    A dictionary with additional description components to overlay on the map
    The keys are the position which can be one of 'top-right','top-left','bottom-right','bottom-left'
    The values are the html elements to place in each position
    Example {'top-right':<div>This is a nice map</div>}
configuration : dict, default None
    A dictionary of configuration options for the map.

Returns

component_value : dict
    A dictionary containing the info dictionary of the event.

Example

import streamlit as st
import pydeck as pdk
import pandas as pd

from streamlit_eidos import st_eidos


st.write("## Example")

chart_data = pd.DataFrame(
    np.random.randn(1000, 2) / [50, 50] + [37.76, -122.4], columns=["lat", "lon"]
)

r = pdk.Deck(
    initial_view_state=pdk.ViewState(
        latitude=37.76, longitude=-122.4, zoom=11, pitch=50, height=600
    ),
    layers=[
        pdk.Layer(
            "HexagonLayer",
            data=chart_data,
            get_position="[lon, lat]",
            radius=200,
            elevation_scale=4,
            elevation_range=[0, 1000],
            pickable=True,
            extruded=True,
        ),
        pdk.Layer(
            "ScatterplotLayer",
            data=chart_data,
            get_position="[lon, lat]",
            get_color="[200, 30, 0, 160]",
            get_radius=200,
        ),
    ],
    tooltip={
        "html": "<b>Temperature:</b> {value} °C",
        "style": {"backgroundColor": "steelblue", "color": "white"},
    },
)

value = st_eidos(r,)

st.write(value)

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

streamlit-eidos-0.2.0.tar.gz (137.7 kB view details)

Uploaded Source

Built Distribution

streamlit_eidos-0.2.0-py3-none-any.whl (136.4 kB view details)

Uploaded Python 3

File details

Details for the file streamlit-eidos-0.2.0.tar.gz.

File metadata

  • Download URL: streamlit-eidos-0.2.0.tar.gz
  • Upload date:
  • Size: 137.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.1 CPython/3.10.12

File hashes

Hashes for streamlit-eidos-0.2.0.tar.gz
Algorithm Hash digest
SHA256 b967c57ee7978d1c201ea074f13d67ae9ef9886af1516a2479306d263bbeaf7a
MD5 718cbffaecd54e52aaa92b5c6f1af84b
BLAKE2b-256 8800db5dad1656cace34251e2684d693b58724a5fc8bce7021f4e0a0e1f3d6c8

See more details on using hashes here.

File details

Details for the file streamlit_eidos-0.2.0-py3-none-any.whl.

File metadata

File hashes

Hashes for streamlit_eidos-0.2.0-py3-none-any.whl
Algorithm Hash digest
SHA256 3035eefafc81b551a1b42b08a4eeb83a394e9973394e75e224065b4a3ad6a248
MD5 53095b6cee5d50d4527b371bb76107f6
BLAKE2b-256 8ab26a8582c699ba5a13df6d4ed695d94a253b2b51f5fa12e6f599ba1937c673

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page