Я хотел бы иметь столбчатую диаграмму с накоплением, например 1, но где цвет отличается для каждого bar, например, в 2 со строкой стека.
x<-matrix(runif(40),ncol=10)
barplot(x,legend=c('part1','part2','part3','part4'), col=rainbow(10))
Я хотел бы иметь столбчатую диаграмму с накоплением, например 1, но где цвет отличается для каждого bar, например, в 2 со строкой стека.
x<-matrix(runif(40),ncol=10)
barplot(x,legend=c('part1','part2','part3','part4'), col=rainbow(10))
Я не знаю, как это сделать в базовой графике. Но если вы хотите использовать ggplot2
, это довольно легко сделать. Например, вы можете использовать прозрачность и цвет как две разные вещи, которые вы хотели бы изменить. Вот код, который я использовал.
require(ggplot2)
# defining the data
set.seed(1)
x<-matrix(runif(40),ncol=10)
df <- data.frame(x=factor(rep(1:ncol(x), each=nrow(x))),
y=as.numeric(x),
part=factor(paste0("part", 1:nrow(x)), levels=paste0("part", nrow(x):1)))
# ggplot call...
ggplot(df, aes(x=x, y=y, fill=x, alpha=part)) +
geom_bar(stat="identity") +
theme_bw(base_size=30) +
scale_x_discrete(name="", breaks=NULL) +
scale_y_continuous(name="") +
scale_fill_discrete(name="", guide="none") +
scale_alpha_discrete(name="", range=c(.3,1))
Это дает вам следующий рисунок.
Конечно, вы можете изменить цвета и прозрачность по желанию. Просто измените вызовы функций scale_alpha_discrete
и scale_fill_discrete
.