Change the text highlight color of selected rows and columns of a flextable. A function can be used instead of fixed colors.
When color is a function, it is possible to color cells based on values
located in other columns; using hidden columns (those not used by
argument colkeys) is a common use case. The argument source
must be used to define the columns to be used for the color
definition, and the argument j must be used to define where to apply
the colors and only accepts values from colkeys.
Arguments
- x
a 'flextable' object, see flextable-package to learn how to create 'flextable' object.
- i
row selector, see section Row selection with the
iparameter in <Selectors in flextable>.- j
column selector, see section Column selection with the
jparameter in <Selectors in flextable>.- color
color to use as text highlighting color. If a function, the function must return a character vector of colors.
- part
part selector, see section Part selection with the
partparameter in <Selectors in flextable>. Value 'all' can be used.- source
if color is a function, source specifies the dataset column to be used as an argument to
color. This is only useful when j is colored with values contained in other columns.
See also
Other sugar functions for table style:
align(),
bg(),
bold(),
color(),
empty_blanks(),
font(),
fontsize(),
italic(),
keep_with_next(),
line_spacing(),
padding(),
rotate(),
style(),
tab_settings(),
valign()
Examples
my_color_fun <- function(x) {
out <- rep("yellow", length(x))
out[x < quantile(x, .75)] <- "pink"
out[x < quantile(x, .50)] <- "wheat"
out[x < quantile(x, .25)] <- "gray90"
out
}
ft <- flextable(head(mtcars, n = 10))
ft <- highlight(ft, j = "disp", i = ~ disp > 200, color = "yellow")
ft <- highlight(ft, j = ~ drat + wt + qsec, color = my_color_fun)
ft
mpg
cyl
disp
hp
drat
wt
qsec
vs
am
gear
carb
21.0
6
160.0
110
3.90
2.620
16.46
0
1
4
4
21.0
6
160.0
110
3.90
2.875
17.02
0
1
4
4
22.8
4
108.0
93
3.85
2.320
18.61
1
1
4
1
21.4
6
258.0
110
3.08
3.215
19.44
1
0
3
1
18.7
8
360.0
175
3.15
3.440
17.02
0
0
3
2
18.1
6
225.0
105
2.76
3.460
20.22
1
0
3
1
14.3
8
360.0
245
3.21
3.570
15.84
0
0
3
4
24.4
4
146.7
62
3.69
3.190
20.00
1
0
4
2
22.8
4
140.8
95
3.92
3.150
22.90
1
0
4
2
19.2
6
167.6
123
3.92
3.440
18.30
1
0
4
4
