모자이크 플롯(mosaicplot)

    모자이크 플롯은 범주형(R에서는 팩터로 표현) 다변량 데이터(하나 이상의 변수가 있는 데이터)를 표현하는 데 적합한 그래프다. 모자이크 플롯에는 사각형들이 그래프에 나열되며, 각 사각형의 넓이가 각 범주에 속한 데이터의 수에 해당한다.

    표 6-28 모자이크 플롯

    mosaicplot : 모자이크 플롯을 그린다.

    mosaicplot(
      x,          # table()로 구한 분할표
      color=NULL, # 모자이크 플롯을 칠하는 색상. TRUE로 지정되면 다양한 농도의 회색 계열
                  # 팔레트 색상으로 각 사각형이 칠해진다. 기본값은 같은 농도의 회색으로 칠한다.
    )
    
    mosaicplot(
      formula,    # 모자이크 플롯을 그릴 포뮬러. "~ 변수 + 변수" 형태의 식을 사용한다.
      data=NULL,  # 포뮬러를 적용할 데이터.   table의 인스턴스, 데이터 프레임 또는 행렬
      color=NULL,
      ...
    )

    이 절에서는 타이타닉호 생존자의 정보를 담고 있는 Titanic 데이터를 사용해 모자이크 플롯을 그려본다. Titanic 데이터의 형태는 다음과 같다.

    > data(Titanic)
    > str(Titanic)
    table [1:4, 1:2, 1:2, 1:2] 0 0 35 0 0 0 17 0 118 154 ...
    - attr(*, "dimnames")=List of 4
     ..$ Class : chr [1:4] "1st" "2nd" "3rd" "Crew"
     ..$ Sex : chr [1:2] "Male" "Female"
     ..$ Age : chr [1:2] "Child" "Adult"
     ..$ Survived: chr [1:2] "No" "Yes"
    

    Titanic은 table 클래스의 인스턴스며, 속성은 객실 구분Class, 성별Sex, 성인 여부Adult, 생존 여부Survived로 구성되어 있다. 실제 데이터를 살펴보자.

    > Titanic
    , , Age = Child, Survived = No
    
         Sex
    Class Male Female
      1st      0      0
      2nd      0      0
      3rd     35     17
      Crew     0      0
    
    , , Age = Adult, Survived = No
    
         Sex
    Class Male Female
      1st  118      4
      2nd  154     13
      3rd  387     89
     Crew  670      3
    
    , , Age = Child, Survived = Yes
    
         Sex
    Class Male Female
      1st    5      1
      2nd   11     13
      3rd   13     14
     Crew    0      0
    
    , , Age = Adult, Survived = Yes
    
           Sex
    Class Male Female
      1st   57    140
      2nd   14     80
      3rd   75     76
     Crew  192     20
    
    신간 소식 구독하기
    뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.