我想使用堆积区域绘制(使用ggplot)每年按国家/地区捕获数据。然而,我在创建堆积区域图表时遇到了问题;由于某种原因,它正在返回堆叠线:
Med=read.csv("Med1950-2014.csv", header=T)
y=as.numeric(Med$catch)
x=as.numeric(Med$year)
country=as.character(Med$fishing_entity)
Medc<- data.frame(x,y1,country)
ggplot(Medc,aes(x=x,y=y1))+ geom_area(aes(colour=country,fill=country), position = 'stack')
我也试过这个:
gg <- ggplot(Medc, aes(x=as.numeric(as.character(x)), y=y1))
gg <- gg + geom_area(aes(colour=country, fill=country))
gg <- gg + scale_x_discrete(labels=levels(highc$x))
gg
答案 0 :(得分:0)
您的代码效果很好,我刚刚将fill
选项从geom_area()
移到ggplot()
,下面的代码返回了有色区域:
library(ggplot2)
data <- data.frame(x = c(1960,1968,1970,1960,1966,1970), y = c(0.0004777018,0.0909000000,0.1077696000, 0.8941553688,0.0028121347 ,0.0033915022), country = c("Turkey", "Turkey","Turkey","Croatia","Croatia","Croatia"))
ggplot(data, aes(x=as.numeric(as.character(x)), y=y,fill=country )) + geom_area()
答案 1 :(得分:0)
@ Malvina_a的数据集我没有遇到这个问题。 但是,如果我使用ggplot2中的钻石数据集和my:
然后确实会发生。
那么,我拿了一小部分钻石数据集(大约22行的子集?),它可以正确填充。
这并不能完全帮助您解决问题,但希望有助于了解问题所在。