Используя сюжетный пакет в R, я хотел бы сделать сюжет сюжета. На самом деле, мне нужно добавить еще одну линию плотности на моем графике. У меня есть данные с информацией о доходах некоторых публичных компаний по географическому региону. Что-то вроде этогоВ R добавить след в плотностью plot
head(data)
id income region
1 4556 1
2 6545 1
3 65465 2
4 54555 1
5 71442 2
6 5645 6
В первый момент, я проанализировал доходы 5 и 6 регионов со следующей плотностью участка
reg56<- data[data$region %in% c(5,6) , ]
dens <- with(reg56, tapply(income, INDEX = region, density))
df <- data.frame(
x = unlist(lapply(dens, "[[", "x")),
y = unlist(lapply(dens, "[[", "y")),
cut = rep(names(dens), each = length(dens[[1]]$x))
)
# plot the density
p<- plot_ly(df, x = x, y = y, color = cut)
Но, я хочу больше, чем это. Я хотел бы добавить общий доход, т. Е. Доход всех регионов. Я попробовал что-то такое
data$aux<- 1
dens2 <- with(data, tapply(income, INDEX = 1, density))
df2 <- data.frame(
x = unlist(lapply(dens2, "[[", "x")),
y = unlist(lapply(dens2, "[[", "y")),
cut = rep(names(dens2), each = length(dens2[[1]]$x)))
p<- plot_ly(df, x = x, y = y, color = cut)
p<- add_trace(p, df2, x = x, y = y, color = cut)
p
Error in FUN(X[[i]], ...) :
'options' must be a fully named list, or have no names (NULL)
Некоторое решение для этого?