如何在 R 中的 ggplot 中打印 x 轴刻度线?

How to print x axis tick marks in ggplot in R?

在我需要构建描述各种概率分布之间关系的可视化的迷你项目的一部分中,我想使用包装在 manipulate 中的 ggplot 函数,以便用户更改分布参数并看到 1 个分布收敛到另一个分布.但是对于下面的代码,我根本无法显示 x 轴标签(例如:1、2、3、4 等等)。我尝试使用标签、中断和更多选项,但仍未找到解决方案。请请求帮助。谢谢。

#poisson distribution
manipulate(
{
data<-data.frame(x=rpois(1000,lamba))
ggplot(data,aes(x=x),bins = 100)+geom_bar()+scale_x_discrete(breaks = seq(1,20,1))
}
,lamba=slider(0.01,10)
)

您应该使用 scale_x_continuous 并将 breaks 更改为 seq(0,20,1) 以获取图表上所有柱的刻度;如果你想从 1 而不是 0 得到 labels 那么你需要像这样在 scale_x_continuous 中定义它: labels = seq(1,21,1).

library(manipulate)
library(ggplot2)
manipulate(
  {
    data<-data.frame(x=rpois(1000,lamba))
    ggplot(data,aes(x=x),bins = 100)+geom_bar()+scale_x_continuous(breaks = seq(0,20,1))
  }
  ,lamba=slider(0.01,10)
)