The hardware and bandwidth for this mirror is donated by dogado GmbH, the Webhosting and Full Service-Cloud Provider. Check out our Wordpress Tutorial.
If you wish to report a bug, or if you are interested in having us mirror your free-software or open-source project, please feel free to contact us at mirror[@]dogado.de.
This package allow you to use billboard.js, a re-usable easy interface JavaScript chart library, based on D3 v4+.
Supported chart types:
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
.
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 :
library("billboarder")
df <- as.data.frame(table(sample(letters[1:5], 50, TRUE)))
df
#> Var1 Freq
#> 1 a 12
#> 2 b 12
#> 3 c 9
#> 4 d 8
#> 5 e 9
billboarder() %>%
bb_barchart(data = df)
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
.
df <- as.data.frame(table(
sample(letters[1:5], 50, TRUE),
sample(LETTERS[1:5], 50, TRUE)
))
df.r <- reshape(data = df, idvar = "Var1", timevar = "Var2", direction = "wide")
df.r
#> Var1 Freq.A Freq.B Freq.C Freq.D Freq.E
#> 1 a 2 2 1 1 3
#> 2 b 2 3 2 0 2
#> 3 c 5 0 1 2 5
#> 4 d 3 1 2 2 4
#> 5 e 0 5 1 0 1
billboarder() %>%
bb_barchart(data = df.r)
Second option is to define a mapping of your variable with function
bbaes
(for more example of mapping, see vignette
billboarder-mapping).
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 :
df <- data.frame(
var_x = seq(-pi, pi, length.out = 10),
sin = sin(seq(-pi, pi, length.out = 10))
)
df
#> var_x sin
#> 1 -3.1415927 -1.224647e-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.224647e-16
billboarder() %>%
bb_linechart(data = df, x = "var_x")
If the first variable of the data.frame
is a
Date
or a POSIX
, it will be automatically
mapped to the x-axis :
df <- data.frame(
date = seq.Date(from = as.Date("2017-06-12"), by = "day", length.out = 10),
var = rnorm(10)
)
df
#> date var
#> 1 2017-06-12 -0.05960369
#> 2 2017-06-13 0.32426261
#> 3 2017-06-14 -0.96574298
#> 4 2017-06-15 1.14550069
#> 5 2017-06-16 0.45642031
#> 6 2017-06-17 -0.09075055
#> 7 2017-06-18 0.14248854
#> 8 2017-06-19 -0.41866594
#> 9 2017-06-20 1.88434874
#> 10 2017-06-21 0.20214119
billboarder() %>%
bb_linechart(data = df)
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) :
For pie chart, use bb_piechart
with a two column
data.frame
:
Donut charts works the same as pie charts :
df <- data.frame(
var = c("A", "B"),
count = c(687, 246)
)
billboarder() %>%
bb_donutchart(data = df)
Note : pie and donut are automatically sorted, you can change that
with bb_data(order = NULL)
.
These binaries (installable software) and packages are in development.
They may not be fully stable and should be used with caution. We make no claims about them.
Health stats visible at Monitor.