Introduction - basic use

Victor Perrier

2019-05-07

## Registered S3 methods overwritten by 'ggplot2':
##   method         from 
##   [.quosures     rlang
##   c.quosures     rlang
##   print.quosures rlang

This package allow you to use billboard.js, a re-usable easy interface JavaScript chart library, based on D3 v4+.

Supported chart types:

  • line
  • bar
  • pie / donut
  • scatter

The main function is billboarder, all charts begin with. You can add layer to your charts with function bb_*, these functions correspond to a billboard option define in the API docs. There are helpers functions to quickly create a type of chart (bb_barchart, bb_linechart, bb_piechart, bb_donutchart, bb_gauge, bb_scatterplot), they have to be called after billboarder.

Bar chart

You can create a simple bar chart by passing a data.frame to bb_barchart, the first column will be used as the x-axis, and the second one as the y-axis :

##   Var1 Freq
## 1    a   13
## 2    b    7
## 3    c   11
## 4    d    9
## 5    e   10

If you want to create a grouped bar chart, first option is to put your data in a “wide” format. Here we use stats::reshape, but I recommend to use tidyr::spread or data.table::dcast.

##   Var1 Freq.A Freq.B Freq.C Freq.D Freq.E
## 1    a      4      2      3      3      0
## 2    b      2      3      0      3      4
## 3    c      2      0      2      3      2
## 4    d      2      1      3      1      2
## 5    e      1      2      2      2      1

Second option is to define a mapping of your variable with function bbaes (for more example of mapping, see vignette billboarder-mapping).

Line chart

You can pass to the function bb_linechart a vector, in that case x-axis will be the index of that vector :

You can change the type of line with argument type, for example an area-step :

If want to specify a variable to map to the x-axis, you had to pass a data.frame to the function :

##         var_x           sin
## 1  -3.1415927 -1.224606e-16
## 2  -2.4434610 -6.427876e-01
## 3  -1.7453293 -9.848078e-01
## 4  -1.0471976 -8.660254e-01
## 5  -0.3490659 -3.420201e-01
## 6   0.3490659  3.420201e-01
## 7   1.0471976  8.660254e-01
## 8   1.7453293  9.848078e-01
## 9   2.4434610  6.427876e-01
## 10  3.1415927  1.224606e-16

If the first variable of the data.frame is a Date or a POSIX, it will be automatically mapped to the x-axis :

##          date           var
## 1  2017-06-12  0.0780861612
## 2  2017-06-13 -0.2639900636
## 3  2017-06-14  0.5645772761
## 4  2017-06-15 -1.6945531413
## 5  2017-06-16  1.6579928607
## 6  2017-06-17  0.0451282583
## 7  2017-06-18  0.6953961623
## 8  2017-06-19 -0.0007874869
## 9  2017-06-20  0.0733739545
## 10 2017-06-21  0.9914078154

Scatter plot

For scatter plot, use a two column data.frame with function bb_scatterplot, or specify the x variable and the y variable (you can also specify a grouping variable) :

Pie chart

For pie chart, use bb_piechart with a two column data.frame :

Donut chart

Donut charts works the same as pie charts :

Note : pie and donut are automatically sorted, you can change that with bb_data(order = NULL).

Gauge chart

Gauge only need one value :