• R语言
  • hist 作图:如何控制 breaks 数,按自己的意思画图

我自己设置 breaks = 15 ,可是画出来的图却不是,我的问题如题

hist(iris$Sepal.Length, breaks = 15, col = viridisLite::viridis(15), border = 'white')

如果使用 ggplot2 没这问题,如下图

library(ggplot2)
ggplot(iris, aes(Sepal.Length)) +
  geom_histogram(bins = 15, fill = viridisLite::viridis(15) )

不知道各位客官,有没有注意到这个问题

    Cloud2016 看文档 ?hist

    In the last three cases the number is a suggestion only

    In the last three cases the number is a suggestion only; as the breakpoints will be set to pretty values

    不过这个设置想来觉得多此一举,倘若想看看,随着 breaks 变大数据呈现什么样的分布,则需要自己另写函数(不知道怎么写)或者手动指定断点位置向量(我试着写一个,但是感觉不对劲,上下界不是简单地用最大最小值代替)

     hist(iris$Sepal.Length, breaks = seq(from = min(iris$Sepal.Length),
    				        to = max(iris$Sepal.Length), length.out = 15 + 1), 
           col = viridisLite::viridis(15), border = 'white')