⚙️ Reading and writing
Defines common methods for reading, writing and manipulating geospatial vector data, as one-liners, and as fast as possible.
Manipulating spatial data
simplifies the handling of spatial vector data in Julia.
Simple geographical vector interaction built on top of ArchGDAL. Inspiration taken from geopandas. See Rasters.jl for raster data interaction, and GeometryOps.jl for further geometry operations.
Since GeoDataFrames.jl
is registered in the Julia General registry, you can simply run the following command in the Julia REPL:
julia> using Pkg
julia> Pkg.add("GeoDataFrames.jl")
# or
julia> ] # ']' should be pressed
pkg> add GeoDataFrames
If you want to use the latest unreleased version, you can run the following command:
pkg> add GeoDataFrames#main
GeoDataFrames depends on GDAL to load and save data by default. However, for several file formats, there now exist native Julia packages that can be used as backends. Before using such a specific file format, you must install and load its corresponding package.
using Pkg
Pkg.add("GeoJSON")
using Pkg
Pkg.add("GeoArrow")
using Pkg
Pkg.add("GeoParquet")
using Pkg
Pkg.add("Shapefile")
using Pkg
Pkg.add("FlatGeobuf")
and as an example, to use the GeoArrow backend and download files, you will need to do:
using GeoDataFrames, GeoArrow
Bugs, errors and making issues for GeoDataFrames.jl
Because there are so many vector file types and variations of them, most of the time we need the exact file
that caused your problem to know how to fix it, and be sure that we have actually fixed it when we are done. So fixing a GeoDataFrames.jl bug nearly always involves downloading some file and running some code that breaks with it (if you can trigger the bug without a file, that's great! but its not always possible).
To make an issue we can fix quickly (or at all) there are three key steps:
Include the file in an accessible place on web without authentication
or any other work on our part, so we can just get it and find your bug. You can put it on a file hosting platform (e.g. google drive, drop box, whatever you use) and share the url.
Add a minimum working example
to the issue template that first downloads the file, then runs the function that triggers the bug.
Paste the complete stack trace
of the error it produces, right to the bottom, into the issue template. Then we can be sure we reproduced the same problem.
Good issues are really appreciated, but they do take just a little extra effort with GeoDataFrames.jl because of this need for files.