我使用以下代码绘制堆积区域图,我得到了预期的图。
P <- ggplot(DATA2, aes(x=bucket,y=volume, group=model, fill=model,label=volume)) + #ggplot initial parameters
geom_ribbon(position='fill', aes(ymin=0, ymax=1))
但是当我添加读取相同数据源的行时,我会在图表的右侧出现未对齐的结果
P + geom_line(position='fill', aes(group=model, ymax=1))
有谁知道为什么会这样?两个图都在读取相同的数据源,所以我无法弄清楚问题是什么。
答案 0 :(得分:0)
我有一个答案,我希望它适合你,它看起来不错,但与原始图表有很大不同:
library(ggplot2)
DATA2 <- read.csv("C:/Users/corcoranbarriosd/Downloads/porsche model volumes.csv", header = TRUE, stringsAsFactors = FALSE)
根据我的经验,您希望将X作为数字变量并将其作为字符串,如果不是这样我可以更改它,但这会将您的存储桶转换为数字向量:
bucket.list <- strsplit(unlist(DATA2$bucket), "[^0-9]+")
x=numeric()
for (i in 1:length(bucket.list)) {
x[i] <- bucket.list[[i]][2]
}
DATA2$bucket <- as.numeric(x)
P <- ggplot(DATA2, aes(x=bucket,y=volume, group=model, fill=model,label=volume)) +
geom_ribbon(aes(ymin=0, ymax=volume))+ geom_line(aes(group=model, ymax=volume))
它给了我区域和线条相互跟踪,希望你需要的是
答案 1 :(得分:0)
如果您切换到使用driver.get("....net");
代替WebDriver driver;
@Before
public void before(){
System.setProperty("webdriver.chrome.driver", "C:/Users/JARs/chromedriver_win32/chromedriver.exe");
driver = new ChromeDriver();
driver.get("....net");
}
,则一切似乎都按预期工作。我不认为geom_path
的排序与geom_line
的行为相同(并且怀疑geom_line
- 如geom_ribbon
- 假设基数y值为零)< / p>
geom_line
应该给你
答案 2 :(得分:0)
实际上,如果您想要做的就是在区域周围绘制轮廓,那么您可以使用颜色美学来做同样的事情。
ggplot(DATA2, aes(x=bucket,y=volume, group=model, fill=model,label=volume)) +
geom_ribbon(position='fill', aes(ymin=0, ymax=1), colour = "black")