我正在尝试为2只股票AAPL和FB创建一个线图.我想打印股票代码和线条,而不是添加单独的图例.如何将geom_text添加到以下代码中?我感谢您提供的任何帮助.
library (ggplot2)
library(quantmod)
getSymbols('AAPL')
getSymbols('FB')
AAPL = data.frame(AAPL)
FB = data.frame(FB)
p1 = ggplot(AAPL)+geom_line(data=AAPL,aes(as.Date(rownames(AAPL)),AAPL.Adjusted,color="AAPL"))
p2 = p1+geom_line(data=FB,aes(as.Date(rownames(FB)),FB.Adjusted,color="FB"))
p2 + xlab("Year")+ylab("Price")+theme_bw()+theme(legend.position="none")
Run Code Online (Sandbox Code Playgroud) 在ggplot2中是否有办法根据点的密度生成具有不同alpha的geom_ribbon(或其他基于区域的geom)?
以下代码产生50个嘈杂的正弦波,每个样本具有随机x值.我不想绘制每一点,因为我可能想要一千个或更多的重新采样,所以我想总结所有这些要点.
一种简单的方法是绘制一个覆盖95%分位数的geom_ribbon.然而,首先,这并不容易计算,因为每个重采样的x值不相同; 通常你会计算每100个点的逐点分位数.
相反,我希望有一个色带覆盖样品所在的整个区域,具有连续的α梯度,即色带在实际线附近的中间最暗,在离群点处非常浅.这可能在ggplot2中吗?
library(ggplot2)
num_points = 100
num_samples = 50
x = seq(0, 4*pi, length.out=num_points)
sim <- lapply(1:num_samples, function(f) {
x = runif(num_points, 0, 4*pi)
y = sin(x) + rnorm(num_points, 0, 0.4)
data.frame(x=x, y=y)
})
sim.df <- do.call(rbind, sim)
actual = data.frame(x=x, y=sin(x))
ggplot(sim.df, aes(x=x, y=y)) +
geom_point(alpha=0.7) +
geom_line(data=actual, colour='blue', size=1.5)
Run Code Online (Sandbox Code Playgroud)