get-started.RmdThis document will let you get started with globe4r. First, install the library from github using either the remotes or the devtools packages.
# install remotes if you do not have it already
install.packages("remotes")
# install globe4r
remotes::install_github("JohnCoene/globe4r")
Once installed, you can load the package.
library(globe4r)
#> Welcome to globe4r
#>
#> Docs: globe4r.john-coene.com
Every globe will be initiated with the create_globe function.
create_globe()
You can use any background you want for globe using the globe_img_url function; as indicated by the function name these must be served on a server (i.e.: the www forlder of a Shiny app). The image_url function provides easy access to four popular such backgrounds, you can also use any from the echarts4r.assets package.
With a globe drawn we can pipe (%>%) various data layers:
The above can be added via two different APIs, a convenient ggplot2-like API and raw API matching the underlayong JavaScript library one-to-one. This document covers the former.
The package makes use of coords (coordiantes) which behaves like the aes function in ggplot2.
create_globe() %>%
globe_pov(-21, 179) %>% # position camera
globe_bars(
coords(lat, long),
data = quakes
)
There are numerous coordinates (coords) available.
lat, lon
start_lat, start_lon
end_lat, end_lon
altituderadiuscolorlabelresolutionmergetransitionsizetextrotationinclude_dotdot_radiusdot_orientationtype_facealtitude_scalestrokecurve_resolutioncircular_resolutiondash_lengthdash_gapdash_initial_gapdash_animate_timecountry,side_color, cap_color
weightYou can use the various scale_ functions to ensure the data is as the underlying JavaScript library expects it. For instance, altitude is ideally between 0 (flat) and 1 (radius of the globe).
create_globe() %>%
globe_pov(-21, 179) %>% # position camera
globe_bars(
coords(
lat, long,
altitude = depth,
color = depth,
label = stations # on hover label
),
data = quakes
) %>%
scale_bars_color() %>%
scale_bars_altitude()