我只有一个时间序列的数据文件: '2012-02-01 17:42:44' '2012-02-01 17:42:44' '2012-02-01 17:42:44' …我想分开数据,以便在小时之前计数。 说: '2012-02-01 17:00:00' 20 '2012-02-01 18:00:00' 30 “20”和“30”表示该期间的时间序列条目的数量。 我希望能够绘制出“计数”的时间。 我怎样才能做到这一点与R? 这是我目前的线图图。 library(ggplot2) req <- read.table("times1.dat") summary(req) da <- req$V2 db <- req$V1 time <- as.POSIXct(db) png('time_data_errs.png', width=800, height=600) gg <- qplot(time, da) + geom_line() print(gg) dev.off()
我在ggplot2中做了一个闪避的barplot,一个分组有一个零计数,我想要显示。 我记得以前在这里看到这个,并认为scale_x_discrete(drop=F)会起作用。 它似乎不适用于躲闪的酒吧。 我怎样才能使零点显示? 例如,(下面的代码)在下面的图中,type8〜group4没有例子。 我仍然希望情节显示零计数的空白空间,而不是消除酒吧。 我该怎么做? mtcars2 <- data.frame(type=factor(mtcars$cyl), group=factor(mtcars$gear)) m2 <- ggplot(mtcars2, aes(x=type , fill=group)) p2 <- m2 + geom_bar(colour="black", position="dodge") + scale_x_discrete(drop=F) p2
我试图了解J()查找时的逻辑,当R中的data.table中有重复的键时 这是我尝试过的一个小实验: library(data.table) options(stringsAsFactors = FALSE) x <- data.table(keyVar = c("a", "b", "c", "c"), value = c( 1, 2, 3, 4)) setkey(x, keyVar) y1 <- data.frame(name = c("d", "c", "a")) x[J(y1$name), ] ## OK y2 <- data.frame(name = c("d", "c", "a", "b")) x[J(y2$name), ] ## Error: see below x2 <- data.table(keyVar = c("a", "b", "c"), […]
我一直在尝试安装一些软件包,如RODBC,ROracle或RGtk2 – 用于拨浪鼓。 我真的很感激,如果有人能帮我解决这个问题,以便我可以使用这些应用程序在一个苹果与小牛和3.1.1 R RODBC和RGtk2都出现这种错误: 软件包“RGtk2”可作为源软件包使用,但不能作为二进制文件在install.packages中发出警告:软件包“RGtk2”不可用(对于R版本3.1.1) 当我尝试使用type ='source'时,我可以下载或开始下载,但是我得到这种错误信息… 在install.packages中的警告:安装包“RODBC”具有非零退出状态
我有两个dataframe: df1 x1 x2 1 a 2 b 3 c 4 d 和 df2 x1 x2 2 zz 3 qq 我想根据df1 $ x1和df2 $ x2之间的条件匹配,用df2 $ x2中的值replacedf1 $ x2中的一些值,以产生: df1 x1 x2 1 a 2 zz 3 qq 4 d
这是一个示例数据框架: d <- data.frame( x = runif(90), grp = gl(3, 30) ) 我想要d的子集,包含每个值为grp的前5个值为x的行。 使用base-R,我的方法是这样的: ordered <- d[order(d$x, decreasing = TRUE), ] splits <- split(ordered, ordered$grp) heads <- lapply(splits, head) do.call(rbind, heads) ## x grp ## 1.19 0.8879631 1 ## 1.4 0.8844818 1 ## 1.12 0.8596197 1 ## 1.26 0.8481809 1 ## 1.18 0.8461516 1 ## […]
我需要绘制一个散点图,用列号而不是名称来寻址variables,即代替ggplot(dat, aes(x=Var1, y=Var2))我需要像ggplot(dat, aes(x=dat[,1], y=dat[,2])) 。 (我说“某事”,因为后者不起作用)。 这是我的代码: showplot1<-function(indata, inx, iny){ dat<-indata print(nrow(dat)); # this is just to show that object 'dat' is defined p <- ggplot(dat, aes(x=dat[,inx], y=dat[,iny])) p + geom_point(size=4, alpha = 0.5) } testdata<-data.frame(v1=rnorm(100), v2=rnorm(100), v3=rnorm(100), v4=rnorm(100), v5=rnorm(100)) showplot1(indata=testdata, inx=2, iny=3) # Error in eval(expr, envir, enclos) : object 'dat' not found
我想创build一个应用程序使用闪光dynamic地添加到页面的情节。 它可能是10个地块,它可能只有一个。 我在dynamic用户界面的shiny主页上使用本教程 。 这是一个简单的例子。 函数showme正在绘制graphics server.r shinyServer(function(input, output) { # Create an environment for storing data symbol_env <- new.env() # Make a chart for a symbol, with the settings from the inputs make_chart <- function(symbol) { showme(symbol) } display <- c("1083484" , "1101732") output$MyList <- renderUi({ for (i in i:nrow(display)) renderPlot({make_chart(display[i])}) }) }) ui.r […]
想象我有一个3列matrix x,y,z其中z是x和y的函数。 我知道如何用plot3d(x,y,z)绘制这些点的“散点图” 但是,如果我想要一个表面,而不是我必须使用其他命令如surface3d问题是,它不接受相同的input作为plot3d它似乎需要一个matrix与 (nº elements of z) = (n of elements of x) * (n of elements of x) 我怎样才能得到这个matrix? 我已经尝试了interp命令,就像我需要使用轮廓图一样。 如何直接从x,y,z绘制曲面而不计算这个matrix? 如果我的分数太多,这个matrix就太大了。 干杯
我想用ggplot2和geom_bar创build一个堆积图。 这是我的源数据: Rank F1 F2 F3 1 500 250 50 2 400 100 30 3 300 155 100 4 200 90 10 我想要一个堆叠图,其中x是排名,y是F1,F2,F3中的值。 # Getting Source Data sample.data <- read.csv('sample.data.csv') # Plot Chart c <- ggplot(sample.data, aes(x = sample.data$Rank, y = sample.data$F1)) c + geom_bar(stat = "identity") 这是我所能得到的。 我不确定如何堆叠字段值的其余部分。 也许我的data.frame格式不好?