Графики карт для атрибутов наборов данных - PullRequest
0 голосов
/ 17 июня 2020

У меня есть список наборов данных, datasets. Я составил список графиков плотности, каждый график в списке относится к одному атрибуту (числовой столбец в данных), и каждый график содержит панели фасетов для каждого набора данных.

@ RonakShah показано мне, вероятно, лучший способ объединить datasets в один, который я считаю необходимым шагом.

Работа выполняется:

iris0 <- iris
iris1 <- cbind(log(iris[,1:4]),iris[5])
iris2 <- cbind(sqrt(iris[,1:4]),iris[5])

datasets <- c("iris0","iris1","iris2")

get_binded_rows <- function(datasets) {
  dplyr::bind_rows(mget(datasets, envir = .GlobalEnv), .id = "DS")
}

plots <- lapply(names(Filter(is.numeric,get(datasets[1]))), function(.x) {
  ggplot(data = get_binded_rows(datasets), aes_string(x=.x)) +
    geom_density(aes(fill = DS), na.rm=TRUE) +
    scale_fill_manual(values = rainbow(length(datasets))) +
    facet_wrap(~DS, scales="free")
})
names(plots) <- names(Filter(is.numeric,get(datasets[1])))

Любой лучший способ сделать это может также можно предложить.

Теперь проблема в том, что я раскрасил графики плотности выше по набору данных (используя fill=DS). Я хочу вместо этого раскрасить их по атрибуту, то есть все три набора данных для Petal.Length будут одного цвета, например красного, три набора данных - для Sepal.Width другого цвета, например, синего, et c.

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