首页 > 解决方案 > R问题,当给定数据是范围时如何绘制直方图?

问题描述

在此处输入图像描述

如果数据是一对一的,我知道如何绘制数据,但我想知道如果数据在一个范围内给出,如何绘制它的直方图

标签: r

解决方案


尝试使用@stefan提到的这种方法,geom_bar()因为您已经总结了这些值。这里使用tidyverse函数的代码:

library(tidyverse)
#Data
df <- data.frame(Class.limits=c('90-98','99-107','108-116','117-125','126-134'),
                 Frequency=c(6,22,43,28,9),stringsAsFactors = F)
#Plot
df %>% mutate(Class.limits=factor(Class.limits,levels = unique(Class.limits),ordered = T)) %>%
  ggplot(aes(x=Class.limits,y=Frequency))+
  geom_bar(stat = 'identity',color='black',fill='red',alpha=0.5)+
  theme_bw()+
  theme(axis.text = element_text(color='black',face='bold'),
        axis.title = element_text(color='black',face='bold'))

输出:

在此处输入图像描述


推荐阅读