簡體   English   中英

如何增加圓形圖中的半徑

[英]how to increase the radius in circlize plot

我使用circlize包繪制了以下圖。 紅色圓圈是之后繪制的單位圓,使用plotrix 我想繪制紅色單位圓外的第一條軌道。 出於這個原因,我將canvas.xlimcanvas.ylim更改為c(-1.2, 1.2) 但是,這不起作用。 任何想法如何增加對圓半徑circlize情節?

注意:或者,如果軌道位於單位圓之外而不是內部,則對我來說就足夠了。

在此處輸入圖片說明

library(circlize)
set.seed(2)
n = 10
a = data.frame(factor = "dummy",
               x = rnorm(n, 100, sd=10))
circos.par(track.height = 0.2,
           canvas.xlim=c(-1.2, 1.2),   # bigger canvas?
           canvas.ylim=c(-1.2, 1.2))   # bigger canvas?
circos.initialize(factors = a$factor, 
                  x = a$x, xlim = c(0, 360))

lim <- c(-1.2, 1.2)
plot(NULL, asp=1, xlim=lim, ylim=lim)
circos.trackHist(a$factor, a$x, col = "blue", bg.col = grey(.95))
plotrix::draw.circle(0,0,1, border="red", lwd=2)  # unit circle

我不知道如何調整xlimylim以使兩個圖適合。 但是如果你只是想把紅色圓圈放在軌道里面,你可以直接使用draw.sector()函數:

circos.initialize(factors = a$factor, 
                  x = a$x, xlim = c(0, 360))
circos.trackHist(a$factor, a$x, col = "blue", bg.col = grey(.95))
draw.sector(0, 360, rou1 = circlize:::get_most_inside_radius(),
    border = "red")

這里circlize:::get_most_inside_radius()返回最后一條軌道的底部邊界到圓心的距離。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM