You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

使用ggplot2绘制dotplot时所有X轴值均相同的问题求助

问题解决

1. 修正变量名不匹配问题

你代码里第一个明显错误是变量名不一致:把CSV数据读入了Lef4对象,但后续调用的都是Lef4_expression,这会导致R使用错误的数据集(如果Lef4_expression不是当前读入的目标数据),直接统一变量名即可:

# 统一变量名,确保后续调用的数据集正确
Lef4_expression <- read.csv2("Lef4 expression.csv")

# 查看数据前几行,确认Hour列的取值情况
head(Lef4_expression)

2. 检查并修正Hour列的数据类型

X轴显示单一值,大概率是Hour列的类型未被正确识别:

  • 先运行str(Lef4_expression)查看Hour列的类型:
    • 如果是字符型(chr),转成因子类型让ggplot识别为离散分组:
      Lef4_expression$Hour <- as.factor(Lef4_expression$Hour)
      
    • 如果是数值型但读入异常,转成数值型:
      Lef4_expression$Hour <- as.numeric(as.character(Lef4_expression$Hour))
      

3. 调整dotplot参数适配分组展示

修改ggplot代码,添加stackgroups = TRUE参数,让不同Hour分组的点在各自的X轴位置堆叠,避免所有点挤在同一位置:

Lef4graph <- ggplot(Lef4_expression, aes(x = Hour, y = Copies.Lef4.ng)) + 
  geom_dotplot(binaxis = 'y', stackdir = 'center', stackgroups = TRUE)
Lef4graph

额外验证步骤

运行table(Lef4_expression$Hour)查看Hour列的取值分布,确认CSV文件中确实存在多个不同的Hour值,排除数据源本身的问题。

内容的提问来源于stack exchange,提问作者Nicholas Furlong

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.14 03:15:40