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