嗨,我正在尝试摆脱 ggplot 在我的绘图周围放置的框。
这是一些代码
d = data.frame(x=rep(1:5,2), y=gl(2,5), height=abs(rnorm(10)))
ggplot(d, aes(x, y, height = height, group = y)) +
geom_ridgeline(fill="black", colour="white") +
theme(panel.grid = element_blank(), panel.background = element_rect(fill = "#000000"), plot.background = element_rect(fill = "#000000"))
Run Code Online (Sandbox Code Playgroud)
产生这个图像:
我想去掉我的地块周围的小灰线。
我使用R(3.0.1)和ggplot2(ggplot2_0.9.3.1)geom_tile和scale_fill_gradient.我正在使用' limits'选项scale_fill_gradient,如下所示.问题是我想摆脱出现在指定限制之外的灰色背景.我希望那个背景是白色的,就像图表的其余部分一样theme_bw().我一直无法弄清楚如何做到这一点.谢谢.
pp <- function (n,r=4) {
x <- seq(-r*pi, r*pi, len=n)
df <- expand.grid(x=x, y=x)
df$r <- sqrt(df$x^2 + df$y^2)
df$z <- cos(df$r^2)*exp(-df$r/6)
df
}
p <- ggplot(pp(20), aes(x=x,y=y))
p + theme_bw() + geom_tile(aes(fill=z)) + scale_fill_gradient(low="green", high="red", limits=c(-0.1, 0.1))
Run Code Online (Sandbox Code Playgroud) 我使用R(3.0.1)和ggplot2(0.9.3.1).我有包含正值和负值的数据,我想获得一个geom_tile图,其中正数和负数有不同的颜色标度渐变(例如,正数从红色变为黄色,负数从蓝色到负数)青色).我能够使用scale_fill_gradientn(见下文)接近我想要的东西,但这导致一个连续的渐变,在中点(0)包括"白色".我需要避免这些中点颜色,因此不知何故需要在零处"破坏"渐变.换句话说,我需要两个连续的梯度(一个用于正值,一个用于负值),其具有零离散度.有帮助吗?
dat <- data.frame(Row = rep(x = LETTERS[1:5], times = 10)
, Col = rep(x = LETTERS[1:10], each = 5)
, Y = runif(n = 50, min = -1, max = 1))
p <- ggplot(data = dat, aes(x = Row, y = Col)) +
geom_tile(aes(fill = Y)) +
scale_fill_gradientn(colours=c("blue","cyan","white", "yellow","red"), values=rescale(c(-1,0,1)))
Run Code Online (Sandbox Code Playgroud)