【问题标题】:Output plot is cutting or not in proper frame in r [closed]输出图在 r [关闭]
【发布时间】:2019-02-21 16:43:14
【问题描述】:

在为 r 中的 eda 分析绘制 hist + 密度图时,输出图未正确拟合到框架中

  hist(Absenteeism_Data$Absenteeism.time.in.hours, col = "peachpuff", border = "black", prob = TRUE, xlab = "Absenteeism.time.in.hour", main = "Absenteeism_Data")
    lines(density(Absenteeism_Data$Absenteeism.time.in.hours, na.rm = TRUE), lwd = 2, col = "chocolate3")

【问题讨论】:

  • 欢迎来到 SO。请花时间阅读 stackoverflow.com/help/how-to-ask。它将帮助您提出可靠的问题,这些问题有望得到有用的答案。请...不要截图。
  • 您能否通过分享您的数据样本来让您的问题可重现,以便其他人可以提供帮助(请不要使用str()head() 或屏幕截图)?您可以使用 reprexdatapasta 包来帮助您。另见Help me Help you & How to make a great R reproducible example?

标签: python r data-visualization data-science


【解决方案1】:

由于您没有提供示例供我们使用,因此我使用一些内置数据进行演示。我可以使用 iris 数据复制您遇到的问题类型。

hist(iris$Sepal.Width, col = "peachpuff", border = "black", 
    prob = TRUE, xlab = "Sepal.Width", main = "Iris Data", breaks=5)
lines(density(iris$Sepal.Width, na.rm = TRUE), lwd = 2, col = "chocolate3")

问题在于 R 在制作直方图时决定了 y 值的范围。它不知道您计划的密度图。所以你必须告诉它留出足够的空间。您可以通过首先运行密度并找到所需的最大值来做到这一点。

DENS = density(iris$Sepal.Width, na.rm = TRUE)
YMax = max(DENS$y)
hist(iris$Sepal.Width, col = "peachpuff", border = "black", ylim=c(0,YMax),
    prob = TRUE, xlab = "Sepal.Width", main = "Iris Data", breaks=5)
lines(DENS, lwd = 2, col = "chocolate3")

【讨论】:

    猜你喜欢
    • 2019-07-26
    • 2017-02-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-03-09
    • 1970-01-01
    • 2017-09-02
    相关资源
    最近更新 更多