2

私は GNU R でベン図に取り組んできました。パッケージ venneuler と VennDiagram を使用してみました。VennDiagram にはより詳細な制御があることがわかりましたが、すべての詳細を記入するためのドキュメントがないようです。私が見つけることができる最も近いものは、この PPT ファイルです。 http://www.ncbi.nlm.nih.gov/pmc/articles/PMC3041657/bin/1471-2105-12-35-S4.PPTは URL: http://www.ncbi.nlm から見つけました。 nih.gov/pmc/articles/PMC3041657/

VennDiagram の使用に関する私の問題は次のとおりです。

コードについて

require(VennDiagram)
venn.diagram(list(B = 1:2000, A = 200:400),fill = c("yellow", "blue"), 
alpha = c(0.8, 0.8), cex =1.5, cat.pos=0, cat.fontface = 4,
lty = 1, fontfamily =3, filename = "test001.jpeg");

(ここに画像がありましたが、私は新しいので、画像を投稿する権利がありません。上記のコードから画像を生成してください。)

サブセットを作成できます (したがって、円内の円)。しかし、私は次のことを行う方法を見つけていません:

  1. BC を B^C と等しくなるようにします。いいえ、文字通りの "B^C" は機能しません。別のプロパティでセットのラベルを変更する方法があると思いますが、それを行う方法は見たことがありません。
  2. B^C と A^C のラベルを、現在示されているように外側ではなく、セット内に配置します。cat.pos="inner" を試しましたが、有効なプロパティではありません。また、 X と Y が円の中心から来る X、Y として供給できることを期待して cat.pos=c(0,0) を試しましたが、異なる結果は得られませんでした。

DWin のおかげで、演習用のダイアグラムを完成させるコードを以下に示します。A ⊂ B とします。B c ⊂ A cであることを示します。

require(VennDiagram)
plot.new()
venn.plot <- venn.diagram(
x = list(B = 1:200, A = 20:40), category.names= expression(B, A), 
          fill = c("yellow", "blue"), alpha = c(0.8, 0.8), cex =1.5, 
          cat.pos=0, cat.dist=c(-.1, -.1),  filename = NULL) ;
grid.draw(venn.plot); # grid graphic requires explicit print or draw operation
grid.text(expression(B^c),x=0.2,y=0.95)
grid.text(expression(A^c),x=0.16,y=0.95)
grid.text(expression(A^c),x=0.16,y=0.75)
4

1 に答える 1

1

おそらく次のようなものです:

 venn.diagram(list(B = 1:200, A = 20:40), category.names= expression(B^c, A), 
            fill = c("yellow", "blue"), alpha = c(0.8, 0.8), cex =1.5, cat.pos=0, 
            cat.dist=c(.1, -.1), cat.fontface = 4,lty = 1, fontfamily =3,
            filename = "test001.jpeg")

円内のラベルを取得するには、'cat.dist' に負の値を指定します。トリックは、基準点が中心からではなく、12 時の境界からの半径距離であることです。ドキュメントによると、category.names 引数は plotmath 構文で解釈されます。plotmath での上付き文字操作は、"^" 演算子で行われます。ここでは、A" を内側に移動し、B^c を外側に残して、ラベルが付けられているのは B 円の外側の領域であることを示唆しています (例を小さくすることで、プロット時間も改善しました)。しかし、それは「パッケージの一部」ではないようです。

ここに画像の説明を入力

grid.text()画面デバイスで注釈を付ける方法は次のとおりです。

plot.new()
venn.plot <- venn.diagram(
 x = list(B = 1:200, A = 20:40), category.names= expression(B^c, A), 
          fill = c("yellow", "blue"), alpha = c(0.8, 0.8), cex =1.5, 
          cat.pos=0, cat.dist=c(.05, -.1),  filename = NULL) ;
 grid.draw(venn.plot); # grid graphic requires explicit print or draw operation
 grid.text("B",x=0.8)
# then you can save to file
于 2012-02-20T21:05:56.043 に答える