小编Eli*_*eth的帖子

在 r 中的 igraph 中均匀间隔顶点

我有以下图表

set.seed(1410)
df<-data.frame(
"site.x"=c(rep("a",3),rep("b",3),rep("c",3),rep("d",3)),
"site.y"=c(rep(c("e","f","g"),4)),
"bond.strength"=sample(1:100,12, replace=TRUE))

library(igraph)
df<-graph.data.frame(df)
V(df)$names <- c("a","b","c","d","e","f","g")
layOUT<-data.frame(x=c(rep(1,4),rep(2,3)),y=c(4:1,3:1))
E(df)[ bond.strength < 101 ]$color <- "red"
E(df)[ bond.strength < 67 ]$color <- "yellow"
E(df)[ bond.strength < 34 ]$color <- "green"
V(df)$color <- "white"
l<-as.matrix(layOUT)
plot(df,layout=l,vertex.size=10,vertex.label=V(df)$names,
edge.arrow.size=0.01,vertex.label.color = "black")
Run Code Online (Sandbox Code Playgroud)

在此处输入图片说明

我想沿着顶点 a 和 d 之间的垂直距离均匀地间隔顶点“ge”,以使我当前的图形(见下文)更漂亮。正如你所看到的,它非常拥挤。

在此处输入图片说明

此外,我想将 x 轴上的两列顶点靠得更近,但我注意到调整布局中的 x 坐标没有响应。例如,尽管 x 坐标发生了剧烈调整,但以下两个布局生成的图形看起来完全相同。

layOUT<-data.frame(x=c(rep(1,4),rep(2,3)),y=c(4:1,3:1))

layOUT<-data.frame(x=c(rep(1,4),rep(100,3)),y=c(4:1,3:1)) 
Run Code Online (Sandbox Code Playgroud)

感谢您的任何建议。

r spacing vertices igraph

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

在条形图的各部分之间用rg中的ggplot2划分线条

我正在使用qplot创建一个堆积条形图,并希望在每个条形的各个部分之间放置一条白线,因为蓝色似乎几乎混合在一起.我不想改变现有的配色方案来解决问题.有任何想法吗?

library(ggplot2)
qplot(carat, data = diamonds, geom = "histogram", fill = color)
Run Code Online (Sandbox Code Playgroud)

在此输入图像描述

plot r ggplot2

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

使用r中的定位器删除插入到绘图中的文本框

如何删除使用定位器插入的最后一项(如文本框)?即

plot(1:3)
text(locator(1),labels="oops wrong spot...remove me",cex=1,font=1)
Run Code Online (Sandbox Code Playgroud)

plot r

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

将在线.csv文件合并到R中的数据框中

我需要在线下载300多个.csv文件,并将它们组合成R中的数据框.它们都具有相同的列名,但长度(行数)不同.

l<-c(1441,1447,1577)
s1<-"https://coraltraits.org/species/"
s2<-".csv"

for (i in l){   
    n<-paste(s1,i,s2, sep="") #creates download url for i
    x <- read.csv( curl(n) ) #reads download url for i
    #need to sucessively combine each of the 3 dataframes into one 
}
Run Code Online (Sandbox Code Playgroud)

url for-loop r download dataframe

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

通过匹配列表来过滤R中的矩阵

我有矩阵:

traits <- matrix(c(1,0,1, 1,0,0, 0,0,0), nrow = 3, ncol=3, byrow=TRUE,
           dimnames = list(c("sp1", "sp2", "sp3"),c("Tr1", "Tr2", "Tr3")))
Run Code Online (Sandbox Code Playgroud)

和一份清单

species <-c("sp1", "sp2")
Run Code Online (Sandbox Code Playgroud)

如何过滤'traits'矩阵,使其只返回匹配即

traits.filtered<-matrix(c(1,0, 1,1, 0,0), nrow = 2, ncol=3, byrow=TRUE,
           dimnames = list(c("sp1", "sp2"),c("Tr1", "Tr2", "Tr3")))
Run Code Online (Sandbox Code Playgroud)

谢谢你,伊丽莎白

merge r filter

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

在r中的向量中添加数字

我有一个矢量

v<-c(1,2,3)
Run Code Online (Sandbox Code Playgroud)

我需要以下列方式在向量中添加数字

1,1+2,1+2+3
Run Code Online (Sandbox Code Playgroud)

产生第二个向量

v1<-c(1,3,6)
Run Code Online (Sandbox Code Playgroud)

这可能很简单......但我有点卡住了.

r vector addition

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

抑制 r 图中的刻度和标签

我想使用axis()在图的上方和右侧创建一个带有刻度和标签的图。如何抑制使用 plot() 函数“自动”打印的刻度和标签?谢谢

x<-1:10
y<-1:10

quartz("test")
par(mar=c(10,10,10,10)+0.1)#sets margins of plotting area
par(pty="s")#fixes the aspect ratio to 1:1

#Automatically adds ticks, numbers and axis labels. How can I avoid this?
plot(x,y,typ="n")

#Adds axes above and to the right of plot area...I want these only
axis(side=4,las=2, ylab="y label")
axis(side=3,las=1,xlab="x label")
Run Code Online (Sandbox Code Playgroud)

plot r

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

从r中的两个向量返回中位数

我有一个包含最小和最大3个范围的向量,即

low<-1,2,3
high<-2,3,4
Run Code Online (Sandbox Code Playgroud)

代表范围1-2,2-3和3-4

我需要返回包含每个范围中点的第三个向量,即

mid<-1.5,2.5,3.5
Run Code Online (Sandbox Code Playgroud)

有什么快速的方法吗?

r vector median

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

标签 统计

r ×8

plot ×3

vector ×2

addition ×1

dataframe ×1

download ×1

filter ×1

for-loop ×1

ggplot2 ×1

igraph ×1

median ×1

merge ×1

spacing ×1

url ×1

vertices ×1