这是在另一个软件中制作的图形的屏幕截图,该图形在 折线图之上创建了散点图 ,该线隐藏在散点图所在的位置。这就是我在 R 中的目的。

r - R中geom_line顶部的geom_point覆盖-LMLPHP
当我在图表和数据上运行以下代码时:

dput(my_df)
structure(list(lastFinancingYear = c(2010, 2011, 2012, 2013,
2014, 2015, 2016, 2017, 2018), raiseMedVal = c(5.33287671232877,
5.03424657534247, 4.96986301369863, 7.36986301369863, 6.44383561643836,
7.73835616438356, 8.4958904109589, 9.9054794520548, 9.43013698630137
), foundMedVal = c(11.0821917808219, 10.5178082191781, 8.62191780821918,
10.2520547945205, 10.9643835616438, 10.9342465753425, 12.9945205479452,
13.5397260273973, 12.6301369863014)), row.names = c(NA, -9L), class = c("tbl_df",
"tbl", "data.frame"))

my_df %>% ggplot() +
  geom_line(aes(x = lastFinancingYear, y = raiseMedVal), size = 1.0, color = "#DDBB7B") +
  geom_point(aes(x = lastFinancingYear, y = raiseMedVal), shape = 1, size = 3.0, color = "#DDBB7B") +
  geom_line(aes(x = lastFinancingYear, y = foundMedVal), size = 1.0)

...然后我得到一个看起来像这样的图表:

r - R中geom_line顶部的geom_point覆盖-LMLPHP

存在散点标记且位于线顶部的 但该线未隐藏在标记 后面,并且散点标记没有足够粗/粗的标记。我不知道如何解决这些问题,任何帮助表示赞赏!

提前致谢!

最佳答案

您需要进行一些调整才能使其正常工作:

  • 使用填充的点形状之一,如形状 21。您可以使用 example("points") 检查这些是什么,然后转到第三个图。
  • 使用 fill = "white"(或其他颜色),因为您使用的是填充形状。
  • geoms 的顺序很重要 - 后面的 geoms 排在最前面,所以将 geom_point() 移到最后。
  • 增加 stroke 增加点的边界大小

  • 更新代码:
    my_df %>% ggplot() +
        geom_line(aes(x = lastFinancingYear, y = raiseMedVal), size = 1.0, color = "#DDBB7B") +
        geom_line(aes(x = lastFinancingYear, y = foundMedVal), size = 1.0) +
        geom_point(aes(x = lastFinancingYear, y = raiseMedVal), size = 3.0, color = "#DDBB7B",
                   shape = 21,
                   stroke = 2.0,
                   fill = "white")
    

    结果:

    r - R中geom_line顶部的geom_point覆盖-LMLPHP

    关于r - R中geom_line顶部的geom_point覆盖,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/52251445/

    10-11 04:21