如何在ggplot2中转换轴标签或使用自定义函数绘图

时间:2015-03-25 21:33:36

标签: r plot ggplot2

在beaver1数据集(标准内置R数据集)中,时间(整数向量)的格式如下:0 = 00:00,830 = 8:30,1020 = 10:20等.I&# 39;我有一个执行这种格式化的功能。因此,我正在寻找一种方法,在使用标签的格式化值时,根据原始时间值制作带有ggplotplot(两者都是完美的)的情节。

P.S。

这是我写的转换器功能。它真该死,所以欢迎你提出更好的建议。我讨厌如何在R中处理字符串。

convert.format <- function(str)
{
    while (nchar(str) != 4){
        str = paste("0", str, sep = "")
    }
    sub("(..$)", ":\\1", str)
}

修改即可。添加数据集的一部分。数据集附带标准R包,可以通过输入data(beavers)

获得
    day time    temp    activ
    346 840 36.33   0
    346 850 36.34   0
    346 900 36.35   0
    346 910 36.42   0
    346 920 36.55   0
    346 930 36.69   0
    346 940 36.71   0
    346 950 36.75   0
    346 1000    36.81   0

1 个答案:

答案 0 :(得分:1)

怎么样:

fix.x <- function(x) sub("(..$)", ":\\1", x)

将其读作:对于x中的每个项目,将字符串末尾(“$”)之前的最后两个字符替换为冒号,然后跟随它们最初的位置。我不认为你可以使用“原始时间”值,因为存在间隙,因为最后两个位置的值不在60到99之间。