2

パッケージでモザイク プロットを作成しようとしていvcdますが、プロットの設定を構成する方法を理解するのに苦労しています。

library(vcd)
library(RColorBrewer)
mydf <- structure(list(A=structure(c(7L,6L,7L,6L,7L,1L,5L,4L,7L,6L,6L,6L,6L,6L,
                                     3L,6L,6L,6L,5L,3L),
                           .Label=c("a","b","c","d","e","f","g","h","i"),
                           class="factor"),
               B=structure(c(3L,2L,1L,1L,3L,3L,3L,3L,2L,3L,3L,1L,3L,
                                3L,3L,3L,3L,3L,3L,3L),
                           .Label=c("a","b","c"),
                           class="factor")),
          .Names=c("A","B"),
          row.names=c(1L,  2L,  3L,  4L,  5L,  6L,  7L,  8L,  9L, 
                      10L, 11L, 12L, 13L, 14L, 15L, 16L, 17L, 18L, 19L, 20L),
          class="data.frame")

mosaic( ~ A + B, data=mydf, highlighting="A", 
        highlighting_fill=brewer.pal(9, "Set3"))

変数 A のさまざまなレベルの凡例がプロットの上部に表示されますが、変数 B のカテゴリ "a" にはこれらすべてのレベルがないため、これはあまり役に立ちません。凡例のすべてのレベルを持つカテゴリと一緒になるように、凡例を一番下に配置したいと思います。

4

1 に答える 1

4

?labeling から、モザイクから引数を受け取るいくつかの「舞台裏」関数があることを知り、いくつかの変更を試みました。

?labeling

これはあなたが望んでいたものに近いと思います:

 mosaic( ~ A + B, data=mydf, highlighting="A", 
      highlighting_fill=brewer.pal(9, "Set3"),
      labeling_args=list(tl_labels =c(TRUE, FALSE) ) )

行ラベルを下に設定し、下のセル位置を配置に使用します。(まだ 'h' と 'i' の重複がありますが、以前は ae の重複があったのに対し、それらは解決することさえできます。)

ここに画像の説明を入力

于 2013-06-07T01:54:30.323 に答える