ggplot中2D密度图中轮廓的填充颜色不同

时间:2019-06-08 08:18:10

标签: r ggplot2

我有一个数据表data_dt。我想在2维上绘制密度轮廓。我不能使填充颜色不同。

任何建议都值得赞赏。

数据看起来像

data_dt
DD    precip    model 
3148   302    observed
2904   262    observed
3345   322    observed
2937   420    observed
3659   140    BNU 
2661   208    BNU 
3314   364    BNU 
3088   222    BNU 

可以通过以下方式创建

data_dtt = data.table(DD   = c(3148, 2904, 3345, 3088, 3314, 2937, 2661, 3659),
                      precip = c(302, 262, 322, 420, 310, 292, 372, 440),
                      model = c("observed", "observed", "observed", "observed", "BNU", "BNU", "BNU", "BNU"))

我尝试了以下代码:

ggplot(data_dtt, aes(x = DD, y = precip)) + 
ylab(y_lab) + xlab(x_lab) + 
stat_density_2d(aes(fill = stat(level), colour = model), 
                alpha = .4, contour = TRUE, geom = "polygon") + 
scale_fill_viridis_c(guide = FALSE, aesthetics = "fill") 

我得到的输出如下:

enter image description here

您会注意到,级别集有不同的颜色,红色和蓝色, 但填充色,阴影不是。

如何使它们与众不同?

也许下面的图像来自完整的数据集会更好。

您可以看到观察到的边界和BNU的边界具有不同的网络颜色,但是每个闭合曲线内部的填充颜色是相同的。

enter image description here

您看到的是,BNU和观察到的中心的曲线都是绿色的,因为它们偏离均值,它们都变成了紫色。我希望BNU的中心是红色,随着它的熄灭,强度会降低,我希望观察到的中心是蓝色。

或者,在下图中,您可以看到不同性别的填充颜色有所不同,我想这样做,但是在2D轮廓中。在我的绘图中,只有边框,曲线或水平集的颜色不同: enter image description here

0 个答案:

没有答案