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.comEvery 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()