2

このトピックに関する他の投稿を検索しましたが、問題がわかりません。ブラジル政府機関に関する予算データと、機関タイプの分類があります。プロットを作成するには、次のようにします。

g <- ggplot(data=totalex.df, aes(x=year, y=totalex.billions))

g + 
geom_line(aes(colour=factor(agency.type))) + 
facet_wrap(agency.type ~  unit, ncol=6) + 
opts(strip.text.x = theme_text(size=2)) + 
opts(axis.text.x=theme_text(size=4)) + 
opts(legend.position="none") + 
scale_y_sqrt("total expenditure (billions)")

私の問題は、ファセット ラベルに 2 つの情報が含まれていることです。機関の種類とユニットの名前です。これは、上記のコードで生成されたグラフの pdfです。ユニットの名前だけを含めたいです。ただし、facet_wrap コマンドから Agency.type を削除すると、ggplot は機関の順序を失います。

の出力dput(totalex.df)はかなり長いですが、ここでは最初の 100 回の観測についてです

> dput(totalex.df.short)
structure(list(year = c(2006, 2006, 2006, 2006, 2006, 2006, 2006, 
2006, 2006, 2006, 2006, 2006, 2006, 2006, 2006, 2006, 2006, 2006, 
2006, 2006, 2006, 2006, 2006, 2006, 2006, 2006, 2006, 2006, 2006, 
2006, 2006, 2006, 2006, 2006, 2006, 2006, 2006, 2006, 2006, 2006, 
2006, 2006, 2006, 2006, 2006, 2006, 2006, 2006, 2006, 2006, 2006, 
2006, 2006, 2006, 2006, 2006, 2006, 2006, 2006, 2006, 2006, 2006, 
2006, 2006, 2006, 2006, 2006, 2006, 2006, 2006, 2006, 2007, 2007, 
2007, 2007, 2007, 2007, 2007, 2007, 2007, 2007, 2007, 2007, 2007, 
2007, 2007, 2007, 2007, 2007, 2007, 2007, 2007, 2007, 2007, 2007, 
2007, 2007, 2007, 2007, 2007), totalex = c(312685301, 46492724, 
85210069, 1478565787, 193941282, 260659307, 8327549603, 0, 18474604, 
91006939, 53538760, 91800981, 402711174, 1290377603, 978348209, 
48360776, 24676283, 89820385, 1038592122, 5364674136, 127383506, 
7552311, 3847705355, 232732854, 34317692, 351714802, 156996087, 
104782402, 0, 47741444, 475303761, 229743044, 102577783, 19106706, 
78619935, 0, 730381485, 998733938, 110785185, 37114540, 108530853, 
0, 0, 0, 2660417864, 169144966, 104350391, 1038914804, 336660855, 
11995616, 0, 0, 9085111, 0, 5281402, 138708048, 11283655, 478421026, 
221976619, 95680527, 8270558, 890375094, 0, 156563720, 198830207, 
286909569, 5525428151, 734738984, 218905808, 1120014693, 859180, 
359873525, 50214197, 95572929, 1628550454, 227051722, 286610734, 
8868199792, 17388668, 19551190, 101047436, 58123546, 101878908, 
423760647, 1019623567, 1061465081, 49559379, 24278026, 110344326, 
1145862548, 7610896352, 163919333, 8376104, 4355447941, 282679957, 
45506963, 392551882, 208594544, 122420822, 0), agency.type = structure(c(NA, 
NA, NA, 3L, 1L, 1L, 7L, 1L, 1L, 1L, 1L, 1L, 4L, 1L, 1L, 1L, 1L, 
3L, 1L, 6L, 1L, 1L, 7L, 1L, 3L, 3L, 1L, 3L, 1L, 1L, 1L, 3L, 3L, 
1L, 3L, 1L, 1L, 1L, 3L, 3L, 3L, 1L, 5L, 3L, 1L, 5L, 3L, 1L, 1L, 
1L, 1L, 3L, 3L, 3L, 1L, 1L, 1L, 1L, 3L, 1L, 1L, 4L, 1L, 1L, 2L, 
1L, 1L, 3L, 1L, 1L, 3L, NA, NA, NA, 3L, 1L, 1L, 7L, 1L, 1L, 1L, 
1L, 1L, 4L, 1L, 1L, 1L, 1L, 3L, 1L, 6L, 1L, 1L, 7L, 1L, 3L, 3L, 
1L, 3L, 1L), .Label = c("Delivery", "Guidance for policy formulation / Research", 
"Regulatory", "Regulatory / Delivery", "Regulatory/Delivery", 
"Transfer / delivery", "Transfer/Regulatory/Deliver"), class = "factor"), 
    unit = structure(c(29L, 28L, 27L, 17L, 21L, 66L, 55L, 5L, 
    69L, 25L, 33L, 36L, 44L, 45L, 9L, 34L, 68L, 13L, 6L, 61L, 
    53L, 65L, 51L, 31L, 41L, 39L, 37L, 49L, 22L, 58L, 47L, 71L, 
    40L, 60L, 19L, 18L, 64L, 10L, 62L, 59L, 42L, 7L, 11L, 4L, 
    52L, 32L, 38L, 8L, 54L, 20L, 12L, 24L, 1L, 63L, 3L, 16L, 
    57L, 70L, 43L, 15L, 2L, 46L, 30L, 35L, 56L, 23L, 48L, 26L, 
    14L, 50L, 67L, 29L, 28L, 27L, 17L, 21L, 66L, 55L, 5L, 69L, 
    25L, 33L, 36L, 44L, 45L, 9L, 34L, 68L, 13L, 6L, 61L, 53L, 
    65L, 51L, 31L, 41L, 39L, 37L, 49L, 22L), .Label = c("Administrative Council of Economic Defense (CADE)                              ", 
    "Air Force Real Estate Funding Agency (CFIAE)                                   ", 
    "Alexandre Gusmao Foundation (FUNAG)                                            ", 
    "Amazon Development Superintendency (SUDAM)                                     ", 
    "Applied Economic Research Institute (IPEA)                                     ", 
    "Brazilian Agricultural Research Corporation (EMBRAPA)                          ", 
    "Brazilian Communication Company (EBC)                                          ", 
    "Brazilian Company of Urban Railway (CBTU)                                      ", 
    "Brazilian Institute of Environment and Renewable Natural Resources (IBAMA)     ", 
    "Brazilian Institute of Geography and Statistics (IBGE)                         ", 
    "Brazilian Institute of Museums (IBRAM)                                         ", 
    "Brazilian Military Material Industry (IMBEL)                                   ", 
    "Brazilian Securities Comission (CVM)                                           ", 
    "Brazilian Space Agency (AEB)                                                   ", 
    "Brazilian Tourism Company (EMBRATUR)                                           ", 
    "Brazilian Urban Railway (TRENSUBR)                                             ", 
    "Central Bank (BACEN)                                                           ", 
    "Chico Mendes Institute (ICMBio)                                                ", 
    "Civil Aviation National Agency (ANAC)                                          ", 
    "Cultural Foundation Palmares                                                   ", 
    "Dom Pedro II School                                                            ", 
    "Energy Research Company (EPE)                                                  ", 
    "Engineering, Construction and Railway (VALEC)                                  ", 
    "Excellence center in advanced electronic technology (CEITEC)                   ", 
    "Federal Centre of Educational Technology Celso Suckow da Fonseca (CEFET-RJ)    ", 
    "Graduate students improvement coordination (CAPES)                             ", 
    "Hospital Cristo Redentor S.A.                                                  ", 
    "Hospital F\x90mina S.A                                                            ", 
    "Hospital Nossa Senhora da Concei\x8d\x8bo S.A                                        ", 
    "Housing Building Fund for Mariners (CCCPMC)                                    ", 
    "Indigenous National Foundation (FUNAI)                                         ", 
    "Institute of the Historical and Artistic National Heritage (IPHAN)             ", 
    "Joaquim Nabuco Foundation                                                      ", 
    "Jorge Duprat Figueiredo Foundation (FUNDACENTRO)                               ", 
    "Manaus Free Trade Zone Superintendency (SUFRAMA)                               ", 
    "Minas Gerais Federal Centre of Educational Technology (CEFET-MG)               ", 
    "Mineral Resources Research Institute (CPRM)                                    ", 
    "National  Agency of Land Transport (ANTT)                                      ", 
    "National  Agency of Sanitary Supervision (ANVISA)                              ", 
    "National  Agency of Supplementary Health (ANS)                                 ", 
    "National  Agency of Water Transport (ANTAQ)                                    ", 
    "National Agency of Electrical Energy (ANEEL)                                   ", 
    "National Agency of Oil, Natural Gas and Biofuel (ANP)                          ", 
    "National Commission of Nuclear Energy (CNEN)                                   ", 
    "National Company of Food Supply (CONAB)                                        ", 
    "National Council of Scientific and Technological Development (CNPq)            ", 
    "National Department of Draught Prevention (DNOCS)                              ", 
    "National Department of Infrasctructure Transport (DNIT)                        ", 
    "National Department of Mineral Production (DNPM)                               ", 
    "National Development Trust (FND)                                               ", 
    "National Health Foundation (FUNASA)                                            ", 
    "National Institute of Colonization and Land Reform (INCRA)                     ", 
    "National Institute of Industrial Property (INPI)                               ", 
    "National Institute of Metrology, Normalization and Industrial Quality (Inmetro)", 
    "National Institute of Social Security (INSS)                                   ", 
    "National Institute of Studies and Educational Research  Anisio Teixeira (INEP) ", 
    "National Institute of Technology Information (ITI)                             ", 
    "National Library Foundation                                                    ", 
    "National Movies Agency (ANCINE)                                                ", 
    "National School of Public Administration Foundation (ENAP)                     ", 
    "National Trust of Education Development (FNDE)                                 ", 
    "National Water Agency (ANA)                                                    ", 
    "Northeast Development Superintendency (SUDENE)                                 ", 
    "Oswaldo Cruz Foundation (FIOCRUZ)                                              ", 
    "Ozorio Foundation                                                              ", 
    "Porto Alegre Clinic Hospital                                                   ", 
    "Private Insurance Superintendency (SUSEP)                                      ", 
    "Rio de Janeiro Botanical Gardens Research Institute                            ", 
    "Rui Barbosa House Foundation                                                   ", 
    "Sao Francisco and Parnaiba Valleys Development Company (CODEVASF)              ", 
    "Telecom National Agency (ANATEL)                                               "
    ), class = "factor")), .Names = c("year", "totalex", "agency.type", 
"unit"), row.names = c(NA, 100L), class = "data.frame")
4

2 に答える 2

2

labeller私の最初の考えに反して、 ではなくでのみ機能するためfacet_grid、ここでは役に立たないと思いますfacet_wrap。むしろ、問題はより簡単に処理できると思います。ファセットの順序は因子レベルの順序によって制御されるため、unitグループ化されるようにレベルを並べ替えるagency.typeだけで十分です。

agency.unit <- unique(totalex.df[c("agency.type", "unit")])

totalex.df$unit <- factor(totalex.df$unit, 
  levels = agency.unit[order(agency.unit$agency.type, 
                             agency.unit$unit), "unit"])

その場合、その中にfacet_wrapは必要ありませんagency.type

facet_wrap(~  unit, ncol=6)

合計で:

ggplot(data=totalex.df, aes(x=year, y=totalex)) + 
    geom_line(aes(colour=factor(agency.type))) + 
    facet_wrap( ~  unit, ncol=6) + 
    opts(strip.text.x = theme_text(size=2)) + 
    opts(axis.text.x=theme_text(size=4)) + 
    opts(legend.position="none") + 
    scale_y_sqrt("total expenditure (billions)")

ここに画像の説明を入力

これを読むことは不可能ですが、最初のユニットは「空軍不動産資金調達機関(CFIAE)」であり、「アレクサンドル・グスマオ財団(FUNAG)」、「応用経済研究所(IPEA)」などと続きます。

于 2012-07-12T18:51:43.187 に答える
-2

再現性のあるデータを提供していただけると助かります。dput(totalex.df)質問に長すぎない場合の出力を追加できますか?

それぞれのファセットが必要ですunitか? または、各組み合わせのファセットが必要ですunit & agency.typeか?

だけの場合はunit、これを試してください:

facet_wrap( ~ unit, ncol=6)

両方の場合は、これを試してください:

facet_grid(agency.type ~ unit, ncol=6)

参考までに - facet_wrap および facet_grid 関数の使用方法をよりよく理解するには、Hadley のドキュメントをご覧ください。

http://had.co.nz/ggplot2/facet_wrap.html

于 2012-07-11T23:49:49.827 に答える