小编use*_*875的帖子

如何设置圆形小平面包裹y轴的限制?

我有这个情节,我需要围绕y轴,所以看起来是可以接受的除了我想不只是在y轴上显示1值的事实.我想在"scale_y_continuous"函数中添加"limit",以便每个facet图的限制对于各个facet是唯一的.

这里是仅在y轴上显示60和80的图

dat = data.frame(x = c(1,2,3,1,2,3),A=c(80.6, 82,83,60,61,62),A_up =c(81,84,85,62,63,64), A_low =c(79,78,81,59,58,57), group = c("z","z","z","y","y","y"))
ggplot(data=dat , aes(x=as.factor(x), y=A, group = 1)) + #, color =Group, group = Group 
  geom_line()  + geom_point() + # facet_wrap(~COUNTERPARTY_STRATEGY ,ncol=2)
  geom_errorbar(aes(ymax = A_up ,ymin = A_low), width = .25) +
     scale_y_continuous(breaks = seq(  floor(  (min(dat$A_low)-11)  /10)*10 ,
                                   ceiling(  (max(dat$A_up)+11) /10)*10,10 ),
                      labels = seq(  floor(  (min(dat$A_low)-11)  /10)*10 ,
                                   ceiling(  (max(dat$A_up)+11) /10)*10,10 )
                      ) +
    facet_wrap(~group ,ncol=2, scales = "free_y") 
Run Code Online (Sandbox Code Playgroud)

现在我在比例y连续中添加限制,它全局应用限制.

dat = data.frame(x = c(1,2,3,1,2,3),A=c(80.6, …
Run Code Online (Sandbox Code Playgroud)

r facet ggplot2

9
推荐指数
2
解决办法
1013
查看次数

R闪亮错误:无法强制类型'封闭'到'double'类型的向量

我想将数字向量作为输入,然后简单地绘制直方图.这是我的R代码:

ui.R:

library(shiny)

shinyUI(pageWithSidebar(

  headerPanel("Hello Shiny!"),

  sidebarPanel(selectInput("Vector", "Select Numbers", c(1,2,3,4), selected = NULL, multiple = TRUE)),

  mainPanel( plotOutput("plotVector"))
))
Run Code Online (Sandbox Code Playgroud)

Server.R:

library(shiny)
shinyServer(function(input, output) {

v<- function()
 {
  v <- rnorm(input$Vector)#take vector as input
}

  output$plotVector <- renderPlot({  hist(as.numeric(v))}) 

})
Run Code Online (Sandbox Code Playgroud)

运行应用程序的代码:

library(shiny)
runApp("C:/Users/me/Desktop/R Projects/testShiny")
Run Code Online (Sandbox Code Playgroud)

当我运行这个时,我收到错误"不能强制类型'封闭'到'double'类型的向量"

你能帮我吗?谢谢.

r

8
推荐指数
1
解决办法
4万
查看次数

订购因素与水平

有人可以解释R中"有序"参数的用途是什么?

R说:

有序
逻辑标志,用于确定是否应将级别视为有序(按给定顺序).

所以如果我有一个名为names的因子并且设置ordered = TRUE

names<- factor(c("fred","bob","john"), ordered = TRUE)
names
Run Code Online (Sandbox Code Playgroud)

为什么打印出来:

[1] fred bob  john
Levels: bob < fred < john
Run Code Online (Sandbox Code Playgroud)

这似乎没有使用我给它的顺序.我开始用fred从Bob开始?

此外,有序参数的使用方式与使用"级别"参数的方式不同,这些参数将对因子进行排序:

names<- factor(c("fred","bob","john"), levels= c("john","fred","bob"))
names
Run Code Online (Sandbox Code Playgroud)

这回来了

[1] fred bob  john
Levels: john fred bob
Run Code Online (Sandbox Code Playgroud)

这似乎遵循我的订购.那为什么我需要"有序"参数?

我对如何使用"有序"和"等级"感到困惑.

r

8
推荐指数
2
解决办法
4003
查看次数

如何检测向量中的空值

什么是检测向量中空值的最佳方法?

如果我有下面的向量,并想知道第四个位置是null,我该怎么做

vx <- c(1, 2, 3, NULL, 5)
is.null(vx)
[1] FALSE
Run Code Online (Sandbox Code Playgroud)

is.null()只返回1个FAlSE和ID,如:

 FALSE FALSE FALSE TRUE FALSE
Run Code Online (Sandbox Code Playgroud)

r

8
推荐指数
2
解决办法
1万
查看次数

如何在facet_wrap中正确使用标签器

我有下面的情节,我希望分面情节标签是“ lbl”中的内容=

> lbl
[1] "0% - 10%"  "10% - 20%"
Run Code Online (Sandbox Code Playgroud)

如何将labeller添加到facet_wrap以便显示该文本,以及labeller如何正确处理labeller函数输出的顺序?即如果我有20个地块,贴标机如何正确地按正确的顺序标记地块?谢谢。

这是代码:

x = c( rep(c(1,2,3,4,5),4)  )
group = c( rep(c(10,10,10,10,10),2),rep(c(20,20,20,20,20),2) )
lbl = paste0(  c("0%", paste0(   unique(group)[1:(length(unique(group))-1)]   ,"%" )  ) 
               ," - ",
               paste0(unique(group),"%"))
lbl
value = rnorm(20)
dat = data.frame( x= x , group  = group, value = value)
dat = dat %>% # create the mu, sd, q1 and q3 aggregates
  group_by(group,x)  %>%  
  summarise(mu =  round(mean(value),2), 
            sd= sqrt(round(sd(value),2)), 
            Q1 = quantile(value)[2],
            Q3 = quantile(value)[4],
            count = …
Run Code Online (Sandbox Code Playgroud)

r ggplot2

8
推荐指数
1
解决办法
3524
查看次数

删除rmarkdown中的图文本

当我在Rmarkdown中插入图像时,我在图像下方看到"图#:".

你怎么摆脱"图:"文字?

例如,这是我的代码

![my caption](C:/mypath/myimage.png)
Run Code Online (Sandbox Code Playgroud)

并且图像下方显示"图1:我的标题".我只想把标题改为"我的标题"

我在这里看了http://yihui.name/knitr/options/#chunk_options 和fig.lp似乎它可能是一个解决方案,但是当我在标题中包含它时:

---
title: "My Title"
output: pdf_document
fig.lp: ('';character)
---
Run Code Online (Sandbox Code Playgroud)

"图:"仍然显示出来.

谢谢.

r r-markdown

8
推荐指数
3
解决办法
5217
查看次数

你如何改变 Sys.time() 的时区

我在 PDT 时区,我想将变量“s”更改为 GMT 时区。知道怎么做吗?

s<-Sys.time()
s
as.POSIXct(s,"GMT")
Run Code Online (Sandbox Code Playgroud)

输出

> s<-Sys.time()
> s
[1] "2015-06-17 17:56:17 PDT"
> as.POSIXct(s,"GMT")
[1] "2015-06-17 17:56:17 PDT" # <--  how do I get this in GMT??
Run Code Online (Sandbox Code Playgroud)

timezone r

7
推荐指数
2
解决办法
4571
查看次数

如何根据另一个数据表中的条件从数据表中删除行

我有2个数据框:

master = data.table(MasterTimes= as.POSIXct("2015-01-01", tz = "GMT") + seq(1,100,1))
mydata = data.frame(MyTimes = as.POSIXct(c("2015-01-01 00:00:18","2015-01-01 00:00:54","2015-01-01 00:00:48","2015-01-01 00:01:10","2015-01-01 00:01:05"),tz = "GMT"))
Run Code Online (Sandbox Code Playgroud)

我想在数据帧中的任何时间的+/- 5秒窗口内保留master中的任何行mydata.我想删除master不符合该条件的行.

如果mydata只有1行,这是一个更简单的例子:

master = data.table(MasterTimes= as.POSIXct("2015-01-01", tz = "GMT") + seq(1,100,1))
mydata = data.frame(MyTimes = as.POSIXct(c("2015-01-01 00:00:18"),tz = "GMT"))
Run Code Online (Sandbox Code Playgroud)

你只能看到mydata包含"2015-01-01 00:00:18".在这种情况下,我想删除主数据框中的所有行,其中时间不在+ - 5秒窗口内,即我想删除master之前"2015-01-01 00:00:13"和之后的所有行"2015-01-01 00:00:23"

这是一个简单的案例,但更难的情况是如果mydata包含

   mydata = data.frame(MyTimes = as.POSIXct(c("2015-01-01 00:00:18", "2015-01-01 00:00:22"),tz = "GMT"))
Run Code Online (Sandbox Code Playgroud)

在这种情况下因为"2015-01-01 00:00:18"再次出现我通常会删除master之前 …

r data.table

7
推荐指数
1
解决办法
661
查看次数

xtable如何进行细胞着色

我在.RMD文件中有这个表,我想用条件格式在PDF中呈现.目前我正在使用pandoc.如何用xtable完成?

 table = data.frame(category = c("A","B","C"), groupA = c(.2,.3,.5), groupB= c(.6,.7,.9))
 table
 pandoc.table(table,split.table = Inf,keep.line.breaks = TRUE)

----------------------------
 category   groupA   groupB 
---------- -------- --------
    A        0.2      0.6   

    B        0.3      0.7   

    C        0.5      0.9   
----------------------------
Run Code Online (Sandbox Code Playgroud)

如何使用条件格式为"groupA"和"groupB"列的单元格着色,如:

>0 and <= .2    = "green"
>.2 and <= .3    = "red"
>.3 and <= .4    = "blue"
>.4 and <= .5     = "orange"
>.5 and <= .6     = "yellow"
>.6 and <= .7     = "black"
>.7 and <= .8     = "brown"
>.8 …
Run Code Online (Sandbox Code Playgroud)

r pandoc r-markdown

7
推荐指数
1
解决办法
1504
查看次数

使用小平面包裹设置单独的y轴限制,不使用刻度free_y

我有这些数据

library(ggplot2)

dat = data.frame(x = c(1,2,1,2), 
                 group = c("a","a","b","b"), 
                 y = c(10,20,1000,2000))

ggplot(dat, aes(x = x, y = y)) + 
    geom_point() + 
    geom_line() + 
    facet_wrap(~group, ncol = 1) +
    coord_cartesian(ylim = c(0, 30))
Run Code Online (Sandbox Code Playgroud)

您可以看到B组未显示,因为我将y限制设置为0,30.我想手动为每个图表设置单独的y限制.我不想使用,scales = "free_y"因为我需要控制每个图表中的限制.

有没有办法可以做到这一点?你能以某种方式为小平面包装中的每个图表提供y限制吗?

r ggplot2

7
推荐指数
1
解决办法
5796
查看次数

标签 统计

r ×10

ggplot2 ×3

r-markdown ×2

data.table ×1

facet ×1

pandoc ×1

timezone ×1