修改现有ggplot对象中的比例,而无需替换比例

用户名

我有一个ggplot对象。它具有由创建的x轴标签scales_x_continuous()在不重新创建图的情况下,并且不更改传递给的任何其他参数的情况下scale_x_continuous(),我想更改x轴标签。我该怎么办?

创建ggplot对象后,有许多关于更新ggplot对象的文章。但据我所知,这些帖子中的解决方案不适用于这种特殊情况。为了解决问题,这是一个小例子:

library(ggplot2)
p <- ggplot(mtcars, aes(mpg, wt)) + 
  geom_point() + 
  scale_x_continuous(name = "oldLabel", limits = c(15, 30))

我想在不覆盖limits参数的情况下将x轴标签从“ oldLabel”更改为“ newLabel” 在这种情况下,其他帖子中提到的许多看似显而易见的策略也不起作用:

  1. p + scale_x_continuous(name = "newLabel")更改标签-但也会更改限制。我可以打电话给解决这个问题p + scale_x_continuous(name = "newLabel, limits = c(15, 30)")但实际上,我使用的ggplot对象可能带有的许多参数scale_x_continuous(),而我不想重复所有这些内容只是为了覆盖x轴标签。

  2. p + xlab("newLabel")不替换标签。也就是说,xlab()在这种情况下似乎没有作用。如果已使用来指定原始标签,则可以使用xlab(),但这不是这种情况。

  3. update_labels(p, list(x = "new x label")) 也不会替换标签。

  4. ggplot_build() 似乎也没有任何作用,至少在我一直使用的时候:

library(gridExtra)
tmp <- ggplot_build(p)
tmp$layout$panel_params[[1]]$x$name     <- "newLabel"
tmp$layout$panel_params[[1]]$x.sec$name <- "newLabel"
grid.arrange(ggplot_gtable(tmp))
艾伦·卡梅伦

您需要更新name绘图本身内的x缩放对象参数(而不是layoutggplot构建对象中的副本)。

这是完整的说明:

library(ggplot2)

p <- ggplot(mtcars, aes(mpg, wt)) + 
  geom_point() + 
  scale_x_continuous(name = "oldLabel", limits = c(15, 30))

p
#> Warning: Removed 9 rows containing missing values (geom_point).


p$scales$scales[[1]]$name <- "newLabel"

p
#> Warning: Removed 9 rows containing missing values (geom_point).

reprex软件包(v0.3.0)创建于2020-09-01

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

从高大的图像中制作出1:1比例的图像,而无需使其变宽

来自分类Dev

在 ggplot2 中取消设置现有的 scale_fill_discrete 或取消新比例的消息

来自分类Dev

ggplot 中的相同比例

来自分类Dev

更新pyqtgraph ImageView图像而无需更改比例和转换

来自分类Dev

在SL中编辑比例对象

来自分类Dev

修改SQLAlchemy对象中的现有值

来自分类Dev

无法在ggplot中调整辅助轴比例

来自分类Dev

R:更改ggplot中x轴的比例

来自分类Dev

ggplot在多个类别中绘制比例

来自分类Dev

替换NSAttributedString中的整个文本字符串,而无需修改其他属性

来自分类Dev

python中的列表修改而无需迭代

来自分类Dev

有没有办法对ggplot2中的大小比例保持绝对控制

来自分类Dev

ggplot上的混合比例

来自分类Dev

在属性网格中扩展自定义对象,而无需对类进行任何修改?

来自分类Dev

Tmap:自定义连续的图例值,而无需更改比例

来自分类Dev

绘制两列数据,其中一列在 ggplot 中具有反向 y 比例

来自分类Dev

在Akka中记录所有消息,而无需修改所有接收方法

来自分类Dev

Python bokeh修改轴比例

来自分类Dev

修改Datadog指标的比例

来自分类Dev

将大型github文件复制到现有存储库中,而无需下载/克隆

来自分类Dev

队列中的比例与总体比例

来自分类Dev

ggplot2中的比例图例显示

来自分类Dev

在ggplot2中以不同比例绘制多个图

来自分类Dev

如何对ggplot中的点和条发布相同的颜色比例

来自分类Dev

ggplot2中两个离散比例的图例

来自分类Dev

ggplot 中的轴转换 - 如何更改特定间隔的比例?

来自分类Dev

用相应的值替换字典中的所有布尔值,而无需遍历字典

来自分类Dev

ggplot中比例大小的箭头

来自分类Dev

ggplot填充属性更改比例

Related 相关文章

  1. 1

    从高大的图像中制作出1:1比例的图像,而无需使其变宽

  2. 2

    在 ggplot2 中取消设置现有的 scale_fill_discrete 或取消新比例的消息

  3. 3

    ggplot 中的相同比例

  4. 4

    更新pyqtgraph ImageView图像而无需更改比例和转换

  5. 5

    在SL中编辑比例对象

  6. 6

    修改SQLAlchemy对象中的现有值

  7. 7

    无法在ggplot中调整辅助轴比例

  8. 8

    R:更改ggplot中x轴的比例

  9. 9

    ggplot在多个类别中绘制比例

  10. 10

    替换NSAttributedString中的整个文本字符串,而无需修改其他属性

  11. 11

    python中的列表修改而无需迭代

  12. 12

    有没有办法对ggplot2中的大小比例保持绝对控制

  13. 13

    ggplot上的混合比例

  14. 14

    在属性网格中扩展自定义对象,而无需对类进行任何修改?

  15. 15

    Tmap:自定义连续的图例值,而无需更改比例

  16. 16

    绘制两列数据,其中一列在 ggplot 中具有反向 y 比例

  17. 17

    在Akka中记录所有消息,而无需修改所有接收方法

  18. 18

    Python bokeh修改轴比例

  19. 19

    修改Datadog指标的比例

  20. 20

    将大型github文件复制到现有存储库中,而无需下载/克隆

  21. 21

    队列中的比例与总体比例

  22. 22

    ggplot2中的比例图例显示

  23. 23

    在ggplot2中以不同比例绘制多个图

  24. 24

    如何对ggplot中的点和条发布相同的颜色比例

  25. 25

    ggplot2中两个离散比例的图例

  26. 26

    ggplot 中的轴转换 - 如何更改特定间隔的比例?

  27. 27

    用相应的值替换字典中的所有布尔值,而无需遍历字典

  28. 28

    ggplot中比例大小的箭头

  29. 29

    ggplot填充属性更改比例

热门标签

归档