R 为什么和什么时候;不建议对离散变量使用大小;?

R 为什么和什么时候;不建议对离散变量使用大小;?,r,ggplot2,scatter-plot,aesthetics,R,Ggplot2,Scatter Plot,Aesthetics,我用ggplot2做了一个散点快照,并将一个二进制变量映射到点大小。结果令人满意,但我得到警告“不建议使用离散变量的大小” 我理解,使用大小映射具有多个级别的非顺序分类变量可能不如使用点形状或不同颜色清晰。然而,我不知道这一警告是否意在警告我们任何更严重的事情 是否有比使用aes(大小=…)更可取的方法根据二进制或分类变量更改点大小 警告“不建议使用离散变量的大小”只是一个设计提示吗 如果我的结果看起来不错,下次我想要类似数据上的相同类型的图形时,我是否应该担心这个警告?正如您所提到的评论,如果

我用ggplot2做了一个散点快照,并将一个二进制变量映射到点大小。结果令人满意,但我得到警告“不建议使用离散变量的大小”

我理解,使用大小映射具有多个级别的非顺序分类变量可能不如使用点形状或不同颜色清晰。然而,我不知道这一警告是否意在警告我们任何更严重的事情

是否有比使用aes(大小=…)更可取的方法根据二进制或分类变量更改点大小

警告“不建议使用离散变量的大小”只是一个设计提示吗


如果我的结果看起来不错,下次我想要类似数据上的相同类型的图形时,我是否应该担心这个警告?

正如您所提到的评论,如果您使用分类变量的大小,那么您误导了读者


如果您有数字且出现此错误,请使用
转换为.numeric()
,因为它们可能已存储为因子或字符值。这也将整理图例。

出现此警告的原因是大小是一种有序的美学,您正在将无序变量映射到有序的美学(大小),这不是一个好主意。在构建变量时,尝试在as.factor()或factor()函数中使用ordered=T,这样可以解决此问题。您也可以使用ordered()函数而不是factor()。

我认为这是一个设计技巧,在必要时可以使用。我想您已经提到过了。使用大小映射非顺序的分类变量可能会向查看者暗示顺序关系,而实际上没有。我发现这是相当严重的,因为它可能会导致沟通错误,但你的里程数可能会有所不同。我认为,如果你真的想将类别映射到大小,你应该将类别转换为数字,然后再进行映射。这样可以避免警告,并确保映射完全按照您希望的方式进行。