小编shN*_*NIL的帖子

ggplot2中的圆形图,其中线段连接在r中

我试图创建一个圆形的情节,我陷入了困境:

dat1 <- data.frame (xvar = 1:10, y = 6, ymin = 4, ymax = 4.5)
Run Code Online (Sandbox Code Playgroud)

使用这些数据,我可以在ggplot2中生成一个圆形带状图

require(ggplot2) 
 ggplot(dat1, aes(x=xvar, y=y)) +  geom_ribbon(aes(ymin=ymin, ymax=ymax),
  col = "blue", fill = "blue2") + ylim (c(0,6)) + coord_polar()
Run Code Online (Sandbox Code Playgroud)

但是我想要更多.

我想使用以下数据用不同的颜色和标签填充功能区的片段.

 filld <- data.frame (start = c(1, 4, 6, 7.5, 8, 9), end = c(4, 6, 7.5, 8, 9, 10),
                         label = c("A", "B", "C", "A", "C", "D"))
  filld
##    start  end label
## 1   1.0  4.0     A
## 2   4.0  6.0     B
## …
Run Code Online (Sandbox Code Playgroud)

r ggplot2

15
推荐指数
3
解决办法
3826
查看次数

使用时间刻度和r中的标签创建线图

我试图创建如下的情节(很多次我最终用手绘制这样的情节,但这次我想自己绘制).

在此输入图像描述

这是我的数据和我的试用版:

myd <- data.frame (period = c("Triassic", "Jurasic", 
 "Cretaceous", "Cenzoic"), myears = c(245, 208, 145, 65), 
 label = c(226, 176,105, 32 ))
myd2 <- data.frame (event = c("Diansaurs_strt", "Birds", 
  "Diansaurs_ext", "Human"), myears = c(235, 200, 60, 0.5))
myd2$x <- -0.25
with (myd2, plot(x,myears,ylim=c(0,250),
xlim = c(0, 10), axes=F,xlab="",ylab="",type="p",pch=17))
with (myd2,text(x,myears,event,pos=4,xpd=T))
axis(side=2,at = myd$label, labels = myd$period)
Run Code Online (Sandbox Code Playgroud)

在此输入图像描述

我有问题特别匹配轴与文本和点的绘图和方向.任何其他想法或改进帮助赞赏.

plot axis r

15
推荐指数
2
解决办法
793
查看次数

更改boxplot的布局并为其添加标签

我想(有建议这样做)创建具有不同外观的boxplot并为其添加标签.预期(未完成)输出将如下所示(每个框具有多种标签)和样本大小.

在此输入图像描述

 boxplot(len~supp*dose, data=ToothGrowth, notch=TRUE,
  col=(c("gold","darkgreen")),
   main="Tooth Growth", xlab="Suppliment and Dose", names = supp )

  # some  unsuccessful trials 
 # to add names 
 boxplot(len~supp*dose, data=ToothGrowth, notch=TRUE,
  col=(c("gold","darkgreen")),
   main="Tooth Growth", xlab="Suppliment and Dose", names = supp*dose)
 # to remove the plot outline 
 boxplot(len~supp*dose, data=ToothGrowth, notch=TRUE,
  col=(c("gold","darkgreen")),
   main="Tooth Growth", xlab="Suppliment and Dose", bty="n")
Run Code Online (Sandbox Code Playgroud)

plot r ggplot2 lattice boxplot

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

在r中合并(拆分的对面)一对行

我有如下列.每列有两对,每对后缀为"a"和"b" - 例如col1a,col1b,colNa,colNb等,直到文件末尾(> 50000).

mydataf <- data.frame (Ind = 1:5, col1a = sample (c(1:3), 5, replace = T), 
   col1b = sample (c(1:3), 5, replace = T),  colNa = sample (c(1:3), 5, replace = T),
   colNb = sample (c(1:3),5, replace = T),
     K_a = sample (c("A", "B"),5, replace = T),  
    K_b = sample (c("A", "B"),5, replace = T))

mydataf 
   Ind col1a col1b colNa colNb K_a K_b
1   1     1     1     2     3   B   A
2   2     1     3     2     2   B …
Run Code Online (Sandbox Code Playgroud)

merge r collapse

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

在r中的线性距离数据中的条件过滤/子数据

这是我的小例子:...........

Mark <- paste ("SN", 1:400, sep = "") 
highway <- rep(1:4, each = 100)
set.seed (1234)
MAF <- rnorm (400, 0.3, 0.1)
PPC <- abs (ceiling( rnorm (400, 5, 5)))

set.seed (1234)
Position  <- round(c(cumsum (rnorm (100, 5, 3)), 
cumsum (rnorm (100, 10, 3)), cumsum (rnorm (100, 8, 3)),
  cumsum (rnorm (100, 6, 3))), 1)

mydf <- data.frame (Mark, highway, Position, MAF, PPC)
Run Code Online (Sandbox Code Playgroud)

我想过滤PPC的数据小于10,同时大于0.3的MAF.

  # filter PPC < 10 & MAF > 0.3 
 filtered <-  mydf[mydf$PPC < 10  & …
Run Code Online (Sandbox Code Playgroud)

r filter conditional-statements

6
推荐指数
1
解决办法
860
查看次数

在分裂时的顺序(例如TA应该在第一个"T"秒中分成两列"A")

我有以下问题,我可以解决:

set.seed (1234)
mydf <- data.frame (var1a = sample (c("TA", "AA", "TT"), 5, replace = TRUE),
                    varb2 = sample (c("GA", "AA", "GG"), 5, replace = TRUE),
                    varAB = sample (c("AC", "AA", "CC"), 5, replace = TRUE)
                    )
     mydf 

  var1a varb2 varAB
1    TA    AA    CC
2    AA    GA    AA
3    AA    GA    AC
4    AA    AA    CC
5    TT    AA    AC
Run Code Online (Sandbox Code Playgroud)

我想将两个字母分成不同的列,然后按字母顺序排序.

编辑:可以在拆分之前完成排序,例如var1a值"TA"var1a应为"AT"或拆分后,var1aa应为"A",var1ab为"T"(而不是"T","A" ).所以排序在每个单元格内.

split_col <- function(.col, data){
    .x <- colsplit( data[[.col]], names =  paste0(.col, letters[1:2]))
   }
Run Code Online (Sandbox Code Playgroud)

拆分每列并合并

    require(reshape)
    splitdf …
Run Code Online (Sandbox Code Playgroud)

sorting split r dataframe

5
推荐指数
1
解决办法
736
查看次数

r中有重叠圆(填充和大小)的行列热图

这是我想要开发的图表:

在此输入图像描述

我有行和列坐标变量,还有三个定量变量(rectheat =填充矩形热图,circleize =圆的大小,circlefill =填充颜色热图).NA应该缺少由不同颜色表示(例如灰色).

以下是数据:

set.seed (1234)
rectheat = sample(c(rnorm (10, 5,1), NA, NA), 7*14, replace = T)

dataf <- data.frame (rowv = rep (1:7, 14), columnv = rep(1:14, each = 7),
          rectheat, circlesize = rectheat*1.5,
          circlefill =  rectheat*10 )
dataf
Run Code Online (Sandbox Code Playgroud)

这是我工作的代码:

require(ggplot2)
ggplot(dataf, aes(y = factor(rowv),x = factor(columnv))) +
      geom_rect(aes(colour = rectheat)) +
     geom_point(aes(colour = circlefill, size =circlesize))  + theme_bw()
Run Code Online (Sandbox Code Playgroud)

我不确定geom_rect是否合适,其他部分没问题,因为除了错误之外我无法得到任何结果.

plot r heatmap ggplot2

5
推荐指数
1
解决办法
3728
查看次数

如何在R中的相关矩阵中提取相邻变量之间的值?

我有一个巨大的相关矩阵,但以下只是一个例子:

    set.seed(1234)

corrmat <- matrix(round (rnorm (36, 0, 0.3),2), ncol=6) 
rownames (corrmat) <- colnames (corrmat) <- c("A", "b1", "b2", "C", "L", "ctt")
diag(corrmat) <- NA 
corrmat[upper.tri (corrmat)] <- NA 
            A    b1    b2     C     L ctt
    A      NA    NA    NA    NA    NA  NA
    b1   0.08    NA    NA    NA    NA  NA
    b2   0.33 -0.17    NA    NA    NA  NA
    C   -0.70 -0.27 -0.03    NA    NA  NA
    L    0.13 -0.14 -0.15 -0.13    NA  NA
    ctt  0.15 -0.30 -0.27  0.14 -0.28  NA

> melt(corrmat)

       X1 …
Run Code Online (Sandbox Code Playgroud)

r matrix filter

4
推荐指数
2
解决办法
1495
查看次数

具有置信区间的箱形图并识别r中的特定数据点

这是我的示例数据:

set.seed(1234)
myd <- data.frame (SN = 1:100, myv = round (rnorm(100, 5, 5), 2))
boxplot(myd$myv, col = "lightgreen")
Run Code Online (Sandbox Code Playgroud)

我想突出显示在4.5到8.2之间的置信区间内的箱线图部分.另外,我想显示不在置信区间(> 8.2且小于4.5)的数据点.输出如下:

在此输入图像描述

我只需要实现这个目标.欢迎ggplot2或其他包解决方案.

r graph figure ggplot2 boxplot

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