【问题标题】:R - How do I plot a histogram with a specific y-axis (rather than just frequency)?R - 如何绘制具有特定 y 轴(而不仅仅是频率)的直方图?
【发布时间】:2020-05-10 21:36:50
【问题描述】:

我希望创建一个直方图,它在 x 轴上绘制排名(1-400ish 值),在 y 轴上绘制每 1000 人的频率。有没有办法用 hist() 函数做到这一点?目前我正在使用 plot.default() 像这样:

plot.default(frequencyData$Deprivation.rank, frequencyData$Prescription.per.1000.people, xlab = 
"Deprivation Rank", ylab = "per 1000", main=graph_title, xlim=NULL, ylim=NULL, type="h")

完成此操作后,我想计算平均值和标准差并将它们绘制为图表上的一条线我得到which currently (using plot.deafult) looks like this

谁能提供帮助?

【问题讨论】:

    标签: r plot histogram standard-deviation


    【解决方案1】:

    您没有提供任何数据进行测试,但我想您可以毫无问题地进行测试。只需使用hist() 函数。

    这是您可以在 R 控制台中输入 ?hist 的文档:

    直方图说明

    通用函数 hist 计算直方图 给定的数据值。如果plot = TRUE,则结果对象为 “直方图”类在返回之前由plot.histogram 绘制。

    Usage hist(x, ...)
    

    默认 S3 方法:

    hist(x, breaks = "Sturges",
       freq = NULL, probability = !freq,
       include.lowest = TRUE, right = TRUE,
       density = NULL, angle = 45, col = NULL, border = NULL,
       main = paste("Histogram of" , xname),
       xlim = range(breaks), ylim = NULL,
       xlab = xname, ylab,
       axes = TRUE, plot = TRUE, labels = FALSE,
       nclass = NULL, warn.unused = TRUE, ...)
    

    因此,您可以尝试将绘图功能更改为:

    hist(
      frequencyData$Deprivation.rank,
      frequencyData$Prescription.per.1000.people,
      xlab = "Deprivation Rank",
      ylab = "per 1000",
      main = graph_title,
      xlim = NULL,
      ylim = NULL
    )
    

    ggplot 替代

    您可以通过使用ggplot 库获得更好看的图表,例如以下示例:

    library(ggplot2)
    ggplot(frequencyData, aes(Deprivation.rank, Prescription.per.1000.people)) +
      geom_histogram() +
      xlab("Deprivation Rank") +
      ylab("per 1000") +
      ggtitle(graph_title)
    

    希望这会有所帮助。

    【讨论】:

    • 因此,当我绘制此图时,y 轴看起来与上图不同。 Instead it appears like this,据我所知,这只是数据中每个剥夺等级出现的频率?
    • 没有任何数据很难判断。尝试删除 type = "h" 选项,甚至更好,尝试使用 ggplot 替代选项,就像在编辑后的答案中一样。
    猜你喜欢
    • 2021-03-03
    • 2015-09-13
    • 2013-02-05
    • 2014-05-09
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-07-16
    相关资源
    最近更新 更多