This function is used to insert lollipop charts into flextable with functions:
compose()
and as_paragraph()
,
append_chunks()
,
prepend_chunks()
.
lollipop(
value,
min = NULL,
max = NULL,
rangecol = "#CCCCCC",
bg = "transparent",
width = 1,
height = 0.2,
unit = "in",
raster_width = 30,
positivecol = "#00CC00",
negativecol = "#CC0000",
neutralcol = "#CCCCCC",
neutralrange = c(0, 0),
rectanglesize = 2
)
values containing the bar size
min bar size. Default min of value
max bar size. Default max of value
bar color
background color
size of the resulting png file in inches
unit for width and height, one of "in", "cm", "mm".
number of pixels used as width
box color of positive values
box color of negative values
box color of neutral values
minimal and maximal range of neutral values (default: 0)
size of the rectangle (default: 2, max: 5) when interpolating value.
compose()
, as_paragraph()
Other chunk elements for paragraph:
as_b()
,
as_bracket()
,
as_chunk()
,
as_equation()
,
as_highlight()
,
as_i()
,
as_image()
,
as_sub()
,
as_sup()
,
as_word_field()
,
colorize()
,
gg_chunk()
,
grid_chunk()
,
hyperlink_text()
,
linerange()
,
minibar()
,
plot_chunk()
iris$Sepal.Ratio <- (iris$Sepal.Length - mean(iris$Sepal.Length)) / mean(iris$Sepal.Length)
ft <- flextable(tail(iris, n = 10))
ft <- compose(ft,
j = "Sepal.Ratio", value = as_paragraph(
lollipop(value = Sepal.Ratio, min = -.25, max = .25)
),
part = "body"
)
ft <- autofit(ft)
ft
Run the code above in your browser using DataLab