簡體   English   中英

更改圖例邊框和圖例標題之間的間距

[英]Change spacing between legend border and legend title

我試圖使用RStudio將圖表保存為圖元文件(* .emf)。 除了圖例的頂部邊框和圖例標題之間沒有間隙之外,圖表的格式在* .emf文件中看起來沒問題。 我該如何添加這樣的差距? 我正在使用基地R

這是代碼。 我無法將* .emf文件上傳到Stack Overflow。

cov       <- 1:20

B0.1      <-  0.2
B1.1      <-  0.2
B0.2      <- -0.2
B1.2      <-  0.1
B0.3      <- -0.6
B1.3      <- -0.02

y.1 <- exp(B0.1 + B1.1 * cov) / (1 + exp(B0.1 + B1.1 * cov))
y.2 <- exp(B0.2 + B1.2 * cov) / (1 + exp(B0.2 + B1.2 * cov))
y.3 <- exp(B0.3 + B1.3 * cov) / (1 + exp(B0.3 + B1.3 * cov))

par(mfrow=c(1,1), pty="s")

plot(cov, y.1, bty = "l", type = 'l', col = 'black', lwd = 2, lty = 1, 
     xlab = 'Cov', ylab = 'Probability', ylim=c(0,1))

     lines(cov, y.2, type = 'l', col = 'black', lwd = 2, lty = 2)
     lines(cov, y.3, type = 'l', col = 'black', lwd = 2, lty = 3)

     abline(v = 10, lwd = 2, lty = 6)

     title('My Plot')

     op <- par(cex = .67)

     legend("bottomright",          c('Prob 1', 'Prob 2', 'Prob 3'), 
                              col = c("black", "black", "black"), 
                              lty = c(1, 2, 3),
                              lwd = c(2, 2, 2),

                              y.intersp = c(1.5, 1.5, 1.5),

                              title = "Legend", cex = 1.00, text.width = 2.50)

然后使用您自己的位置打印圖例的邊框:

首先是沒有邊框的傳奇(將bty設置為“n”),將位置保存在“a”中:

a <- legend("bottomright",c('Prob 1', 'Prob 2', 'Prob 3'), 
       col = c("black", "black", "black"), 
       lty = c(1, 2, 3),bty="n",
       lwd = c(2, 2, 2),
       y.intersp = c(1.5, 1.5, 1.5),
       title = "Legend", cex = 1.00, text.width = 2.50)

定義您自己的矩形位置:

rect(a$rect$left, a$rect$top-a$rect$h[1], a$rect$left+a$rect$w, a$rect$h[1])

暫無
暫無

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

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