# Our Logo In R

January 31, 2018
By

(This article was first published on R on The Jumping Rivers Blog, and kindly contributed to R-bloggers)

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
##
## 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. R-bloggers.com offers daily e-mail updates about R news and tutorials on topics such as: Data science, Big Data, R jobs, visualization (ggplot2, Boxplots, maps, animation), programming (RStudio, Sweave, LaTeX, SQL, Eclipse, git, hadoop, Web Scraping) statistics (regression, PCA, time series, trading) and more...