在 R 中绘制直方图

Posted

技术标签:

【中文标题】在 R 中绘制直方图【英文标题】:Plotting Histograms in R 【发布时间】:2021-11-03 11:46:17 【问题描述】:

我正在使用 R 并希望将“名称”列中每个名称的直方图绘制到 R 中的“分数”。任何见解都是有帮助的。

数据集

Name Score
Anna 40
David 30
juli 20
Anna 20
David 50
juli 40
Anna 20
David 20
juli 20

如何使用 R 绘制 anna、David 和 Juli 的直方图?

【问题讨论】:

一个建议只是 dput(df) 以便人们可以轻松地使用您的数据进行绘图或其他事情 【参考方案1】:

类似的数据结构

set.seed(1234)
df <- data.frame(
  sex=factor(rep(c("F", "M"), each=200)),
  weight=round(c(rnorm(200, mean=55, sd=5), rnorm(200, mean=65, sd=5)))
  )
head(df)

要绘制的代码

library(ggplot2)
# Basic histogram
ggplot(df, aes(x=weight)) + geom_histogram()
# Change the width of bins
ggplot(df, aes(x=weight)) + 
  geom_histogram(binwidth=1)
# Change colors
p<-ggplot(df, aes(x=weight)) + 
  geom_histogram(color="black", fill="white")
p

【讨论】:

【参考方案2】:

数据:

df <- structure(list(Name = c("Anna", "David", "juli", "Anna", "David", 
"juli", "Anna", "David", "juli"), Score = c("40", "30", "20", 
"20", "50", "40", "20", "20", "20")), class = "data.frame", row.names = c(NA, 
-9L))

情节。想法是使用facet_wrapName 列中的每个唯一类别创建一个直方图。

library(ggplot2)
ggplot(df, aes(x = Score)) + geom_histogram(stat = "count") + theme_bw() + 
  facet_wrap(~Name)

【讨论】:

以上是关于在 R 中绘制直方图的主要内容,如果未能解决你的问题,请参考以下文章

R绘制直方图(Histogram)

text 在R中绘制多个直方图

如何在 R 中绘制预分箱直方图

R绘制边缘直方图箱图(Marginal Histogram / Boxplot)

R语言可视化:频率直方图绘制

使用 gt 表绘制每行的直方图 - R