# Our Logo In R

**R on The Jumping Rivers Blog**, and kindly contributed to R-bloggers]. (You can report issue about the content on this page here)

Want to share your content on R-bloggers? click here if you have a blog, or here if you don't.

Hi all, so given our logo here at Jumping Rivers is a set of lines designed to look like a Gaussian Process, we thought it would be a neat idea to recreate this image in R. To do so we’re going to need a couple packages. We do the usual `install.packages()`

dance (remember this step can be performed in parallel)

install.packages(c("ggplot2", "ggalt", "readr"))

We’re also going to need the data containing the points for the lines and which set of points belongs to which line. There is a Gist available to download via Jumping Rivers. To read in the csv file we’re going to use the raw data link.

(dd = readr::read_csv("https://goo.gl/HzNbAp", col_types = "ddc")) ## # A tibble: 40 x 3 ## x y type ## <dbl> <dbl> <chr> ## 1 36.9 -311 1 ## 2 67.9 -332 1 ## 3 179 -156 1 ## 4 254 -259 1 ## # ... with 36 more rows

The data set contains three columns, `x`

, `y`

and `type`

, where `type`

indicates the line. Let’s start with a standard `geom_line()`

library("ggplot2") g = ggplot(dd, aes(x, y)) g + geom_line(aes(group = type))

The graph shares similarities with our logo, but is too *discrete*. To smooth the curve, we’ll use a function from the **ggalt** package

library("ggalt") g + geom_xspline(aes(group = type), spline_shape = -0.3)

The function `geom_xspline()`

is the X-spline version of `geom_line()`

, drawing a curve relative to the observations.

The parameter`spline_shape = -0.3`

controls the shape of the spline relative to the observations. This can be a number between `-1`

& `1`

. Basically, `-1`

= bumpy lines, `1`

= flat lines.

Next we’ll change the widths of the lines

(g1 = g + geom_xspline(aes(size = type, group = type), spline_shape = -0.3) + scale_size_manual(values = (4:1)/2, guide = FALSE))

The `scale_size_manual()`

function enables us to control the line widths. Finally, we remove the background

g1 + theme_void()

The function`theme_void()`

does what it says on the tin it gives us a theme completely void of everything. Bar the lines of course.

That’s all for now.

Thanks for reading! 🙂

**leave a comment**for the author, please follow the link and comment on their blog:

**R on The Jumping Rivers Blog**.

R-bloggers.com offers

**daily e-mail updates**about R news and tutorials about learning R and many other topics. Click here if you're looking to post or find an R/data-science job.

Want to share your content on R-bloggers? click here if you have a blog, or here if you don't.