Skip to main content

GeoViz

GeoViz is an Exploratory Data Analysis tool designed to empower data analysts to visualize and interpret spatio-temporal data. It offers a user-friendly, interactive web interface built on Panel, ensuring simplicity and maximal explainability. The software provides visualizations, including 3D geographical coordinates, seasonality analysis, heatmap displays, and categorization/clustering using Natural Language Processing (NLP). With a focus on simplicity and shareability, GeoViz enhances data analysis for a broader audience.

The documentation can be found at our readthedocs page.

Example Usage

First, install GeoViz:

pip install rrcgeoviz

Once done, run the following command to create an config file through a GUI:

rrcgeoviz --init

The config file is JSON that specifies the data to be looked at and visualized. Here's a sample one:

{
    "columns": {
        "latitude_column": "latitude",
        "longitude_column": "longitude",
        "time_column": "date",
        "description_column": "description"
    },
    "features": [
        "search_columns",
        "month_year_heatmap",
        "test_option_name",
        "yearly_range",
        "one_year",
        "all_months",
        "one_year_months",
        "threeD",
        "poi_analysis",
        "nlp_bertopics"
    ],
    "caching": {
        "cache_results": false,
        "use_cache": false
    }
}

To create an options.json file you can use something like what is shown above or run

rrcgeoviz --init

Finally, run GeoViz with the following command:

rrcgeoviz path/to/dataset.csv path/to/options.json

A tab should open in your browser with all of the enabled features!

Brief overview of how it works (for contributers)

image

When running from the command line, the main() function in src/rrcgeoviz/geoviz_cli.py runs. The options and dataset are stored in an Arguments object.

The Arguments object is first passed to the GeneratedData class. The GeneratedData class checks whether to pull data from the cache or not. If it needs new data, then it calls any relevant classes in the DATA_GENERATORS array to make it available. The data is then passed back to the Arguments object as the generateddata attribute.

The Arguments object with the data, options, and generated data is passed to the GeoVizPanelDashboard class. Here, the data is checked (i.e. it is not null, it's in the correct range, etc.) and then the relevant classes in the ALL_FEATURE_CLASSES array are called to create the features for GeoViz. These don't make any data, just render what's there into pretty visualizations.

Here's a general flow of how to add new components:

  • Data Generator: If new data is required (e.g. distance to nearest POI) create a new subclass of the ParentGeneratorClass in src/rrcgeoviz/datagenerators. Look at GeneratorExample for reference. Once it's made, add it to the DATA_GENERATORS array at the top of the src/rrcgeoviz/GeneratedData file.

  • Visualizer: Create the panel component as a subclass of ParentGeovizFeatures in src/rrcgeoviz/features. Look at other features in the directory for a sense of what they look like. Add the new feature to the ALL_FEATURE_CLASSES array at the top of the GeoVizPanelDashboard file.

That's pretty much it!

Metadata

Release files for rrcgeoviz 0.1.5

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for rrcgeoviz 0.1.5
File Size Uploaded Provenance Actions
rrcgeoviz-0.1.5.tar.gz 44.8 kB Without provenance Details for rrcgeoviz-0.1.5.tar.gz

Built distribution (wheel)

Table of built distributions (wheels) for rrcgeoviz 0.1.5
File Interpreter ABI Platform Actions
rrcgeoviz-0.1.5-py3-none-any.whl Python 3 none any Details for rrcgeoviz-0.1.5-py3-none-any.whl

Total release size: 100.0 kB

Release files / rrcgeoviz-0.1.5.tar.gz

Download URL rrcgeoviz-0.1.5.tar.gz
Size 44.8 kB
Tags Source
SHA-256 checksum
How to use checksums
07ee02ed8ad035fbbab1e206856299eedf2efdcb6f0281a9c512473c06e4abf0
BLAKE2b-256 checksum
How to use checksums
b6873db62e2610df613e68efbb51c5ff110692eba1e0cdb5f8ab21f934daf067
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/5.0.0 CPython/3.9.19

Release files / rrcgeoviz-0.1.5-py3-none-any.whl

Download URL rrcgeoviz-0.1.5-py3-none-any.whl
Size 55.2 kB
Tags Python 3
SHA-256 checksum
How to use checksums
7fb32434a5c2507e66778dfcc81076aa2098e30d0feb2381b23da5ca78629cd7
BLAKE2b-256 checksum
How to use checksums
59b64c1fdc969283b4774fd41e24bbc65474ac3e8780f0eb48c31ca5b7da27e1
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/5.0.0 CPython/3.9.19

Security for rrcgeoviz 0.1.5

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page