Условное форматирование нескольких столбцов в таблице GT - PullRequest
0 голосов
/ 26 апреля 2020

Это мой первый пост, поэтому извиняюсь, если что-то напутал. Я пытаюсь применить условное форматирование к нескольким столбцам (сравнивая результаты для образцов SampA, SampB и SampB с лимитом) таблицы GT. Следуя примеру одного из gt и другому переполнению стека Q , мне удалось применить его к одному столбцу (переменной), используя этот код:

## Conditional Formatting of single column in gt table

samples = as_tibble(cbind("Chem"=c("Cd","Pb","Zn"),
                       "Limit"=c("0.005","0.05","0.007"),
                       "SampA" = c("0.001","0.15","0.003"),
                       "SampB" = c("0.002","0.04","0.005"),
                       "SampC" = c("0.009","0.23","0.03")))

gt(samples,rowname_col="Chem") %>% tab_style(
        style = list(
                cell_fill(color = "grey80"),
                cell_text(weight = "bold")
        ),
        locations = cells_body(
                columns = vars(SampA),
                rows = SampA >= Limit
        )
    )   %>% tab_spanner(
            label = "Samples",
            columns = vars(SampA,SampB,SampC))

Успешное условное форматирование для одного столбца

Однако мне не удалось расширить его до нескольких столбцов. Я могу заставить аргумент 'columns' работать с 'vars (SampA, SampB, Samp C)'. Оставляя аргумент 'rows' с помощью 'SampA> = Limit', форматирование 'работает' в том смысле, что все строки, где SampA> = Limit, выделены в трех столбцах Samp, но это не то, что мне нужно. Выполнение приведенного ниже кода заканчивается без форматирования какого-либо столбца.

        locations = cells_body(
                columns = vars(SampA,SampB,SampC),
                rows = vars(SampA,SampB,SampC) >= Limit
        )

Неудачное условное форматирование нескольких столбцов

Мне удалось "грубой силой" добиться того, что я хочу, повторив style_tab () с учетом каждая колонка, но знайте, что должен быть лучший способ добраться до моей цели. Помогите?

gt Успешное условное форматирование методом грубой силы.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...