4

Rのヒストグラムの凡例にある色付きの正方形のサイズを大きくしようとしています。PDFを出力するときは小さすぎるため、色を区別するのが困難です。私はグーグル、R-help Nabbleフォーラム、そしてこの場所を検索しましたが、まったく役に立ちませんでした。また、凡例のドキュメントにあるコマンドのいくつかを試しました。

それらを増やすには、legend()関数で何を使用する必要がありますか?見やすくするために、各色の正方形の周りの黒い境界線を削除することは可能ですか?

ここに私の例:

a<-c(1,1,2,3,3,3,3,4,54,56,2,23,1,3,23)
hist(a) 
graphics::legend(x=-1,y=10,c(">0%",">20%",">40%",">60%",">80%"),
       x.intersp=1,y.intersp=2,cex=1, bty="n",
       fill=c("black","gray50","gray70","gray85","white"))

ここに画像の説明を入力してください

凡例のボックスのサイズを変更したいですか?


解決策:@BenBolkerから

凡例関数の上のスクリプトに追加します

> source("http://www.math.mcmaster.ca/bolker/R/misc/legendx.R")

それから加えて

> box.cex=c(2,2)

凡例関数内

4

3 に答える 3

7

legend関数のソースをハッキングしてbox.cex、ボックスの相対的なx次元とy次元を指定する引数を許可しました。これは完全ではありません。拡張が十分に大きい場合はy.intersp、塗りつぶしボックスが重ならないように調整する必要があります。

source("http://www.math.mcmaster.ca/bolker/R/misc/legendx.R")
a<-c(1,1,2,3,3,3,3,4,54,56,2,23,1,3,23)
cex <- 1
hist(a)
legend("topright",c(">0%",">20%",">40%",">60%",">80%"),
       bty="n",
       fill=c("black","gray50","gray70","gray85","white"),
       box.cex=c(3,3),
       y.intersp=2.8)

ここに画像の説明を入力してください

于 2012-11-30T13:55:42.447 に答える
7

端が長方形の非常に太い線を使用できます。

plot( 1, type = "n", axes = FALSE, xlab = "", ylab = "" ) # Empty plot
par( lend = 1 ) # Rectangular line endings
legend(
  "topleft",
  c( "Red", "Black" ),
  col = c("red", "black"),
  lty = 1, lwd = 10
)

ここに画像の説明を入力してください

于 2012-11-30T14:46:31.543 に答える
2

オプションの塗りつぶしを混ぜてボックスのサイズを変更することは困難です。

しかし、オプション pt.cexpchがあり、塗りつぶしオプションがないものを使用できます。

a<-c(1,1,2,3,3,3,3,4,54,56,2,23,1,3,23)
par(mfrow=c(1,2)) 
hist(a) 

graphics::legend(x=10,y=10,c(">0%",">20%",">40%",">60%",">80%"), 
                 x.intersp=1,y.intersp=1,cex=c(1),bty="n",
                 fill=c("black","gray50","gray70","gray85","white"),
             #    pch=c(24,22,21,23,25),
                 pt.cex = c(2,2,2,2,5), 
                 lwd=1.5,title='Histo fill option') 

hist(a) 

graphics::legend(x=10,y=10,c(">0%",">20%",">40%",">60%",">80%"), 
       x.intersp=1,y.intersp=1,cex=c(1),bty="n",
       pch=c(24,22,21,23,25),
       pt.cex = c(1,2,3,3,4), 
       lwd=1.5, title = 'Histo whithout fill ') 

ここに画像の説明を入力してください

于 2012-11-30T13:14:16.297 に答える