Skip to main content

Command line vector viewer for .shp, .geojson, .gpkg, .geoparquet, .kml, and .kmz with a simple Qt UI.

Project description

viewgeom

Downloads PyPI version Python version

Quick viewer for vector datasets from the command line.

Supports:

  • Shapefile (.shp)
  • GeoJSON (.geojson, .json)
  • GeoPackage (.gpkg)
  • GeoParquet (.parquet, .geoparquet)
  • KML, KMZ (.kml, .kmz)

It automatically detects layers and columns and allows switching visualization columns.

Installation

pip install viewgeom

Note: Requires Python 3.9 or later.

GeoParquet and Parquet support requires pyarrow, which is optional:

pip install "viewgeom[parquet]"

Usage

viewgeom <path> [--column <name>] [--layer <name>] [--limit N] [--simplify tol] [--point-size px]
Option Description
--column <name> Choose numeric column for coloring
--layer <name> Select layer in a .gpkg file
--limit N Max number of features to load (default 100000)
--simplify <tol/off> Geometry simplification. Use a number for tolerance or off to disable
--point-size px Set point size in pixels. Overrides automatic point sizing
--version Show version

Examples

# View a GeoJSON
viewgeom gadm41_JPN_1.json

# Color by a numeric column
viewgeom landuse.shp --column area_sqkm

# View a GeoPackage and its specific layer
viewgeom countries.gpkg --layer ADM_ADM_2

# View a geoparquet
viewgeom mangrove_with_EAD.geoparquet --limit 150000 --simplify off

Keyboard Controls

Key Action
+ / - Zoom in / out
Arrow keys Pan
[ / ] Switch columns
M Switch colormap
B Toggle basemap
R Reset view

Notes

• For fast performance, only the first 100,000 features are displayed by default. Adjust with --limit (e.g., --limit 500000 or --limit 0 for no limit).
• Complex geometries are simplified by default (--simplify 0.01).
Use --simplify off to fully disable simplification.

Update in v0.1.3

  • Viewgeom supports both numeric and categorical columns for visualization, while still giving the option to display outlines only by entering 'x' when prompted.
  • For a numeric column, the tool prints the data range as well as the visualization stretch range. For a categorical column, it prints the number of unique categories and show the first few (up to five).
  • For point data, the tool prints the automatically chosen point size. You can override this by using the --point-size option.
  • KML/KMZ files are fully supported and their attribute columns can be used for coloring.
  • If an internet connection is slow or unavailable, the basemap will be sipped and the viewer will continue without it.
  • The default behavior still limits large datasets to 100000 features. In addition to this, if the feature density is high, the tool further limits the sample to 1000 features. Users can adjust this behavior with the --limit option.
  • As a safeguard, if drawing takes more than 30 seconds, viewgeom will exit automatically.

Credit & License

viewgeom, which followed from viewtif, was inspired by the NASA JPL Thermal Viewer — Semi-Automated Georeferencer (GeoViewer v1.12) developed by Jake Longenecker (University of Miami Rosenstiel School of Marine, Atmospheric & Earth Science) while at the NASA Jet Propulsion Laboratory, California Institute of Technology, with inspiration from JPL’s ECOSTRESS geolocation batch workflow by Andrew Alamillo. The original GeoViewer was released under the MIT License (2025) and may be freely adapted with citation.

Citation

Longenecker, Jake; Lee, Christine; Hulley, Glynn; Cawse-Nicholson, Kerry; Purkis, Sam; Gleason, Art; Otis, Dan; Galdamez, Ileana; Meiseles, Jacquelyn. GeoViewer v1.12: NASA JPL Thermal Viewer—Semi-Automated Georeferencer User Guide & Reference Manual. Jet Propulsion Laboratory, California Institute of Technology, 2025. PDF.

License

This project is released under the MIT License © 2025 Keiko Nomura.

If you find this tool useful, please consider supporting or acknowledging the author.

Useful links

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

viewgeom-0.1.3.tar.gz (12.1 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

viewgeom-0.1.3-py3-none-any.whl (13.0 kB view details)

Uploaded Python 3

File details

Details for the file viewgeom-0.1.3.tar.gz.

File metadata

  • Download URL: viewgeom-0.1.3.tar.gz
  • Upload date:
  • Size: 12.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.12

File hashes

Hashes for viewgeom-0.1.3.tar.gz
Algorithm Hash digest
SHA256 736004206e81036d6b1774316b754a6ecffe261608fe3541046ae3f7709a4531
MD5 aab1c032ed0ef3e5aa8d0378bd45f1b4
BLAKE2b-256 05a2b0bf85332766fdb43bdab2624d0946272bfd25dc0f2df7b6aa3ab8d73f53

See more details on using hashes here.

File details

Details for the file viewgeom-0.1.3-py3-none-any.whl.

File metadata

  • Download URL: viewgeom-0.1.3-py3-none-any.whl
  • Upload date:
  • Size: 13.0 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.12

File hashes

Hashes for viewgeom-0.1.3-py3-none-any.whl
Algorithm Hash digest
SHA256 8f1ff14b4c475a6532bdf6d6eaf43665621f035f257f083136046764c69e35cd
MD5 6f7b77e0dfa2a34d8d10b59457d0502c
BLAKE2b-256 6e82565bc6cca03ffa9de1a0c97cfc8c21860c7a8b7aa1c0239444feb0775143

See more details on using hashes here.

Supported by

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