6

由于hist()基础 R 不报告百分比(并且 freq=FALSE)也无济于事,我转向lattice.

histogram(rnorm(10000))

请帮我解决以下问题:

  1. 我怎样才能摆脱情节周围的盒子?
  2. 如何分别定义 x/y 标签和 x/y 轴的 cex?
  3. 如何为 x 和 y 轴提供自定义名称?
4

2 回答 2

6

或者,如果你想坚持hist(),你可以稍微修改一下,如下所示。

此函数调用hist()一次以获取其返回值,该值是一个包含有关直方图结构的各种有用信息的对象。然后,它使用 (a) 箱的宽度和 (b) 每个条的密度来计算 (c) 每个条中观察值的百分比。

histPercent <- function(x, ...) {
   H <- hist(x, plot = FALSE)
   H$density <- with(H, 100 * density* diff(breaks)[1])
   plot(H, freq = FALSE, ...)
}

histPercent(rnorm(10000), col="dodgerblue", las=1,
            xlab="Echs-axis", ylab="Why-axis")

在此处输入图像描述

于 2012-01-31T17:17:45.210 回答
5

这应该让你开始:

library(lattice)
histogram(rnorm(10000),     
    main=list(
        label="Main plot title",
        cex=1.5),
    xlab=list(
        label="Custom x-axis label",
        cex=0.75),
    ylab=list(
        label="My very own y-axis label",
        cex=1.2),
    scales=list(cex=0.5),
    par.settings = list(axis.line = list(col = 0))
)

在此处输入图像描述

于 2012-01-31T15:23:37.517 回答