You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
[Rasters.jl](https://rafaqz.github.io/Rasters.jl/dev) defines common types and methods for reading, writing and
14
-
manipulating rasterized spatial data.
11
+
[Rasters.jl](https://rafaqz.github.io/Rasters.jl/dev) is a powerful Julia package for working with spatial raster data. It provides a unified interface for reading, writing, and manipulating raster data. The package extends [DimensionalData.jl](https://rafaqz.github.io/DimensionalData.jl/dev/) to enable intuitive spatial indexing and manipulation of raster data.
15
12
16
-
These currently include raster arrays like GeoTIFF and NetCDF, R grd files,
17
-
multi-layered stacks, and multi-file series of arrays and stacks.
13
+
Key features:
14
+
- Support for multiple raster formats (e.g. GeoTIFF, NetCDF, GRD)
15
+
- Support for multi-layered stacks and multi-file series of arrays
16
+
- Lazy loading of large datasets
17
+
- Intuitive spatial indexing with named dimensions (X, Y, Time)
18
+
- Efficient handling of multi-layered stacks and time series
19
+
- Built-in support for coordinate reference systems (CRS)
20
+
- High-performance operations optimized for spatial data
18
21
19
22
# Quick start
23
+
20
24
Install the package by typing:
21
25
22
26
```julia
@@ -31,7 +35,7 @@ using Rasters
31
35
32
36
Using `Rasters` to read GeoTiff or NetCDF files will output something similar to the
33
37
following toy examples. This is possible because Rasters.jl extends
34
-
[DimensionalData.jl](https://github.com/rafaqz/DimensionalData.jl) so that
38
+
[DimensionalData.jl](https://rafaqz.github.io/DimensionalData.jl/dev/) so that
35
39
spatial data can be indexed using named dimensions like `X`, `Y` and `Ti` (time)
36
40
and e.g. spatial coordinates.
37
41
@@ -41,7 +45,7 @@ lon, lat = X(25:1:30), Y(25:1:30)
41
45
ti =Ti(DateTime(2001):Month(1):DateTime(2002))
42
46
ras =Raster(rand(lon, lat, ti)) # this generates random numbers with the dimensions given
43
47
```
44
-
```
48
+
```julia
45
49
6×6×13 Raster{Float64,3} with dimensions:
46
50
X Sampled{Int64} 25:1:30 ForwardOrdered Regular Points,
47
51
Y Sampled{Int64} 25:1:30 ForwardOrdered Regular Points,
@@ -64,7 +68,7 @@ Rasters reduces its dependencies to keep the `using` time low.
64
68
But, it means you have to manually load packages you need for each
65
69
backend or additional functionality.
66
70
67
-
For example, to use the GDAL backend, and download RasterDataSources files, you now need to do:
71
+
For example, to use the GDAL backend, and download RasterDataSources files, you need to do:
68
72
69
73
```julia
70
74
using Rasters, ArchGDAL, RasterDataSources
@@ -80,7 +84,7 @@ Sources and packages needed:
80
84
Other functionality in extensions:
81
85
- Raster data downloads, like `Worldclim{Climate}`: `using RasterDataSources`
82
86
- Makie plots: `using GLMakie` (opengl interactive) or `using CairoMakie` (print) etc.
83
-
- Coordinate transformations for gdal rasters: `using CoordinateTransformations`
87
+
- Coordinate transformations for GDAL rasters: `using CoordinateTransformations`
84
88
85
89
## Getting the `lookup` array from dimensions
86
90
@@ -100,7 +104,7 @@ Selecting a time slice by `index` is done via
100
104
```julia
101
105
ras[Ti(1)]
102
106
```
103
-
```
107
+
```julia
104
108
6×6 Raster{Float64,2} with dimensions:
105
109
X Sampled{Int64} 25:1:30 ForwardOrdered Regular Points,
106
110
Y Sampled{Int64} 25:1:30 ForwardOrdered Regular Points
@@ -120,7 +124,7 @@ values: 25 26 27 28 29 30
120
124
```julia
121
125
ras[Ti=1]
122
126
```
123
-
```
127
+
```julia
124
128
6×6 Raster{Float64,2} with dimensions:
125
129
X Sampled{Int64} 25:1:30 ForwardOrdered Regular Points,
126
130
Y Sampled{Int64} 25:1:30 ForwardOrdered Regular Points
@@ -142,7 +146,7 @@ or and interval of indices using the syntax `=a:b` or `(a:b)`
142
146
```julia
143
147
ras[Ti(1:10)]
144
148
```
145
-
```
149
+
```julia
146
150
6×6×10 Raster{Float64,3} with dimensions:
147
151
X Sampled{Int64} 25:1:30 ForwardOrdered Regular Points,
148
152
Y Sampled{Int64} 25:1:30 ForwardOrdered Regular Points,
@@ -165,7 +169,7 @@ values: [:, :, 1]
165
169
```julia
166
170
ras[Ti=At(DateTime(2001))]
167
171
```
168
-
```
172
+
```julia
169
173
6×6 Raster{Float64,2} with dimensions:
170
174
X Sampled{Int64} 25:1:30 ForwardOrdered Regular Points,
171
175
Y Sampled{Int64} 25:1:30 ForwardOrdered Regular Points
0 commit comments