R Y轴上具有高范围的散点图

R Y轴上具有高范围的散点图,r,plot,graph,scatter-plot,R,Plot,Graph,Scatter Plot,如何为y轴范围很大的数据绘制散点图? 我希望在X轴上有年份,在Y轴上有大小,同时多年使用不同的颜色。 我问题的重点是如何在y轴上显示不同尺寸之间的差异。因此,ggplot(df,aes(x=Year,y=Size))+geom_点(aes(color=factor(Year)))不是答案 structure(list(Year = c(2006L, 2006L, 2006L, 2006L, 2007L, 2007L, 2008L, 2009L, 2009L, 2010L, 2012L, 201

如何为y轴范围很大的数据绘制散点图? 我希望在X轴上有
年份
,在Y轴上有
大小
,同时多年使用不同的颜色。 我问题的重点是如何在y轴上显示不同尺寸之间的差异。因此,
ggplot(df,aes(x=Year,y=Size))+geom_点(aes(color=factor(Year)))
不是答案

structure(list(Year = c(2006L, 2006L, 2006L, 2006L, 2007L, 2007L, 
2008L, 2009L, 2009L, 2010L, 2012L, 2012L, 2013L, 2014L, 2014L, 
2015L, 2015L, 2015L, 2015L, 2016L, 2016L, 2017L, 2017L, 2017L, 
2017L, 2017L, 2018L, 2018L, 2018L, 2018L, 2018L, 2018L, 2018L, 
2018L, 2018L, 2019L, 2019L, 2019L, 2019L, 2019L, 2019L, 2019L, 
2019L, 2019L, 2020L, 2020L, 2020L, 2020L, 2020L), Size = structure(c(19L, 
1L, 27L, 27L, 19L, 14L, 23L, 9L, 28L, 14L, 20L, 20L, 10L, 3L, 
23L, 31L, 17L, 18L, 28L, 25L, 5L, 25L, 25L, 13L, 28L, 5L, 15L, 
16L, 7L, 4L, 21L, 8L, 6L, 6L, 25L, 2L, 30L, 33L, 12L, 29L, 11L, 
22L, 25L, 26L, 33L, 25L, 32L, 24L, 2L), .Label = c("10", "100", 
"102", "105", "108", "126", "139", "142", "17", "20", "20 389", 
"200", "25", "27", "30", "300", "35", "40", "43", "44", "46", 
"5 482 ", "50", "500", "507", "52 735 ", "70", "75", "80", "81", 
"83", "95", "96"), class = "factor")), class = "data.frame", row.names = c(NA, 
-49L))

如果y轴太大,且值的范围很大,则最好使用对数刻度。我将使用以10为底的对数作为y轴刻度

首先,您的数据具有
大小
作为因子,如果您将其作为数字读入,则不再需要此步骤

df1$Size <- as.numeric(gsub(" ", "", as.character(df1$Size)))

df1$Size谢谢@Rui Barradas。如何确定y轴上的上限值?我将上限值设置为100000,它完全改变了整个图形的形状。@EsterSilva您要求设置一个更大的数量级。太多了,整个图表看起来会不一样。你试过
scale\u y\u log10(limits=c(11000))
?@EsterSilva查看漂亮的对数刻度标签。谢谢@Rui Barradas。当我将你的评论编辑成scale_y_log10(limits=c(10100000))时,它工作得非常好
library(ggplot2)

Breaks <- min(df1$Year):max(df1$Year)

ggplot(df1, aes(Year, Size, color = factor(Year))) +
  geom_point() + 
  scale_x_continuous(breaks = Breaks, label = Breaks) +
  scale_y_log10() +
  labs(y = bquote(log[10](Size))) +
  guides(color = guide_legend(title = "Year"))