r - 如何在ggplot中反转点大小?

标签 r ggplot2

请帮我解决这一点。我需要将正值表示为小点,将负值表示为大点。如果我在尺寸前减去负号,则点尺寸是正确的,但图例正在更改:

df=data.frame(x=rnorm(20),y=runif(20),z=rnorm(20))
ggplot(df,aes(x=x,y=y))+geom_point(aes(size=-z))

因此不适合。

最佳答案

一种解决方案是使用scale_size()并设置自己的breaks,然后再设置相反的labels。更改了z值的范围以获得更好的表示形式。

df=data.frame(x=rnorm(20),y=runif(20),z=(-13:6))
ggplot(df,aes(x=x,y=y))+geom_point(aes(size=-z))+
  scale_size("New legend",breaks=c(-10,-5,0,5,10),labels=c(10,5,0,-5,-10))

关于r - 如何在ggplot中反转点大小?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14307205/

相关文章:

R markdown文档很好地显示代码

r - 使用knitr和latex在Rmarkdown中代码块字体大小

r - 使用 ggplot2 仅将一个轴转换为 log10 刻度

r - 忽略未知的美学 : text in ggplot (using numbers or letters as points)

r - 如何使用 ggplot 更改轴上数字的格式?

r - 在shiny中传递URL参数时如何避免将所有内容都包装在observeEvent()中?

r - NLP - 在 R 中识别和替换单词(同义词)

r - Windows 中的 PDF 展平

r - ggplot2条形图中的有序因子

r - 使用因子使用 ggplot2 创建密度图