R ggplot颜色栏宽度不相等

R ggplot颜色栏宽度不相等,r,ggplot2,plot,R,Ggplot2,Plot,您好,我正在绘制一个图表,其中将有图例,图例项目的宽度不一样,任何人都可以帮助我解决我的问题吗 数据文件

您好,我正在绘制一个图表,其中将有图例,图例项目的宽度不一样,任何人都可以帮助我解决我的问题吗

数据文件

<

我用过的代码

df=read.table("test.txt",sep='\t', header=TRUE)
df = data.frame(df)
nCol <- 15
myCol <- viridis(n = nCol)
myCol
ggplot(df, aes(log(data1), log(data2),color=data3),cex=1.9)+
  geom_point() +
  scale_colour_stepsn(colours = c(myCol),breaks = seq(0,100,by=10))+
  theme(panel.grid.major = element_blank(), panel.grid.minor = element_blank(),
        panel.background = element_blank(), axis.line = element_line(colour = "black"))+
  theme(text = element_text(size = 12, face="bold"),
        legend.text = element_text(size = 7, face="bold"), legend.position="top",
        legend.key.size = unit(10, "mm"),
        legend.key.width=unit(10, "mm"))

df=read.table(“test.txt”,sep='\t',header=TRUE)
df=数据帧(df)

nCol在解决您的主要问题之前,有几个旁白:

  • 您可以使用
    scale\u color\u bined(type=“viridis”)
    简化代码,这与创建向量的结果相同 viridis颜色,并在您执行操作时对其进行插值,还有一个额外的优点,即您不需要加载
    viridis
  • 您可以在x轴和y轴上使用对数比例,而无需变换坐标 数据,通过使用
    scale\u x\u log10()
    scale\u y\u log10()
  • 您可以通过首先调用
    theme\u classic()
    来简化
    theme
    调用,这样就不需要指定所有那些
    元素\u blank()
    组件
但是,对于您遇到的特定问题,出现这种情况的原因是
中断
是用于装箱比例的“内部”中断。标尺的外边缘不是打断,而是限制。默认情况下,限制不会显示在装箱秤上,但在将限制设置为所需的
c(0,100)

因此,您的上述代码可以重写为:


df为什么日志中没有X轴和Y轴的比例values@Hemantchandrunaik为了清楚起见,我把它们改了。如果你愿意,你可以把它们换回来。你想让我这么做吗?没关系,我改了,90-10有很多值,有可能在那个特别的箱子上破裂90-92,92-94…98-100像那个箱子我看到你已经恢复了我在你的帖子上所做的编辑。这是为了使该问题更容易理解,并更清楚地表明该问题,因为该问题已获得接近票数的表决。您还原这些编辑是否有特定原因?