我想在下面的R中制作这种类型的图,它是边际直方图和我认为的geom_hex对象的组合。这最初是一张matplotlib seaborn图。
我无法与RColorbrewer交谈。有什么想法吗?
到目前为止,我已经得到:
require(ggplot2)
require(RColorBrewer)
require(ggExtra)
bl<-data.frame(beta=rnorm(100),lambda=rnorm(100))
p<-ggplot(bl,aes(x=beta,y=lambda))+
stat_bin_hex()+
#scale_fill_gradient(palette = "Greens") Neither of these work
#scale_fill_continuous(palette = "Greens")+
scale_fill_brewer()+
theme_classic()
ggExtra::ggMarginal(p, type = "histogram")
原始代码:
x, y = np.random.multivariate_normal(mean, cov, 1000).T
with sns.axes_style("white"):
https://seaborn.pydata.org/tutorial/distributions.html
sns.jointplot(x=x, y=y, kind="hex", color="greens");
答案 0 :(得分:3)
您可以使用scale_fill_gradientn
并使用brewer.pal
传递调色板。然后,您只需将正确的填充和颜色传递给ggMarginal
library(ggplot2)
library(RColorBrewer)
library(ggExtra)
bl <- data.frame(beta=rnorm(10000),lambda=rnorm(10000))
p <- ggplot(bl, aes(x=beta, y = lambda))+
stat_bin_hex() +
scale_fill_gradientn(colors = brewer.pal(3,"Greens")) +
theme_classic() +
theme(legend.position = "bottom")
ggMarginal(p, type = "histogram", fill = brewer.pal(3,"Greens")[1], color = "white")
由reprex package(v0.2.1)于2018-11-20创建