π‘ Background: This application is developed as a direct evolution and standalone port of the RasterViz QGIS Python Plugin. While the original plugin required users to have QGIS installed, this Standalone Edition frees the user from any heavy GIS software dependencies, packing powerful spatial visualization tools into a fast, dedicated desktop environment.
RasterViz standalone Designed for simplicity and speed, it allows users to effortlessly load, style, and compose beautiful, publication-ready maps involving both raster imagery and vector boundaries without the overhead of heavy desktop GIS software.

β¨ Key FeaturesΒΆ
ποΈ Interactive Layer Manager: Drag and drop to reorder raster and vector layers in real-time.
π°οΈ Raster Rendering: Support for single-band (continuous & discrete) and RGB composite imagery.
πΊοΈ Vector Symbology: Render shapefiles, KML, and GeoPackages with customizable fill, stroke, and categorized colors.
π Dynamic Basemaps: Instantly overlay your data on top of Esri, OpenStreetMap, or CartoDB basemaps.
π Cartographic Tools: Built-in coordinate grid, scale bars (simple & alternating), and dynamic north arrows.
π Dark / Light Mode: Eye-friendly UI themes tailored for long hours of spatial analysis.
πΈ High-Quality Export: Save your map compositions as high-resolution PNG, TIFF, SVG, or PDF files.
π How to Run from SourceΒΆ
Clone the repository:
git clone [https://github.com/Defani/RasterViz.git](https://github.com/Defani/RasterViz.git) cd RasterViz
2. **Create and activate a virtual environment (optional but recommended):**
```bash
python -m venv build_venv
# Windows
build_venv\Scripts\activate
# Linux/Mac
source build_venv/bin/activate
Install the dependencies:
pip install -r requirements.txt
Run the application:
cd app
python main.py
π¦ Compiling into a Permanent App (.exe)ΒΆ
You can compile RasterViz into a permanent, standalone Windows executable using PyInstaller. This allows you to run the application on any computer without needing to install Python or the required libraries.
Ensure you have PyInstaller and the necessary hooks installed in your environment:
pip install pyinstaller pyinstaller-hooks-contrib
Navigate to the root directory of the project and run the following command:
pyinstaller --noconsole --name="RasterViz" --windowed --icon="app/icon.png" --add-data="app/icon.png;." app/main.py
Note: Because geospatial libraries (like rasterio, fiona, and pyproj) require extensive underlying C-libraries and PROJ data dictionaries, compiling them might require specific .spec file modifications to ensure all coordinate system data is bundled correctly.
3. Once compiled, your executable will be located in the newly created dist/RasterViz folder. You can create a shortcut of RasterViz.exe to your desktop!
π Acknowledgments & CreditsΒΆ
This application exists because of the monumental efforts of the open-source GIS and Python community. A massive thank you to the developers and maintainers of the following libraries:
PyQt5: For providing a rock-solid, cross-platform GUI framework.
Matplotlib: The backbone of our map rendering, turning raw arrays into beautiful cartography.
Rasterio & GDAL: For fast, efficient, and Pythonic reading of geospatial raster data.
GeoPandas & Fiona: For making vector data manipulation and rendering incredibly intuitive.
Contextily: For seamlessly retrieving and plotting web map tiles (basemaps).
NumPy: For the blazingly fast array operations required in image processing.
QtAwesome: For providing beautiful, scalable UI icons.
Special thanks to the global open-source community for continuing to democratize geospatial technology.
Author: Defani Arman Alfitriansyah
License: MIT License