【R】 산포도를 그리는 방법

10895 단어 R통계
산점도는 두 변수의 상관 관계를 표현하는 방법입니다.
매우 기본적인 작도입니다만, 도수 분포도나 상자 수염도등과 나란히 잘 사용되는 수법이라고 생각합니다.

분석에 사용되는 데이터


  • 다음 데이터는 한 산의 동쪽(east)과 서쪽(west)의 다양한 표고에서 측정한 수고(m)입니다.
  • direction 열: 사면의 방위각(east/west)
  • altitude 열 : 측정 지점의 고도
  • tree_height 열: 측정된 수고


  • tree_height.csv
    direction,altitude,tree_height
    east,260,12.1
    east,320,12.3
    east,390,8.2
    east,430,9.8
    east,470,7.9
    east,500,6
    west,280,15.3
    west,330,11.9
    west,380,11.2
    west,410,9.3
    west,440,7.9
    west,500,6.8
    

    데이터 로드



    R 콘솔
    > tree_height <- read.table("C:\\tree_height.csv", header=TRUE, encoding="CP932", sep=",")
    > tree_height
       direction altitude tree_height
    1       east      260        12.1
    2       east      320        12.3
    3       east      390         8.2
    4       east      430         9.8
    5       east      470         7.9
    6       east      500         6.0
    7       west      280        15.3
    8       west      330        11.9
    9       west      380        11.2
    10      west      410         9.3
    11      west      440         7.9
    12      west      500         6.8
    

    간단한 산점도 그리기


  • plot(가로축의 데이터, 세로축의 데이터)로 하는 것으로, 간단하게 산포도를 작성할 수 있습니다.
  • 산포도로서 표현하면, 「고도가 오르면서, 수고가 낮아지고 있다」라고 하는 것을 한눈에 알 수 있습니다.

  • R 콘솔
    > plot(tree_height$altitude, tree_height$tree_height)
    



    산점도의 제목과 축 레이블 지정


  • 다음과 같이 매개 변수를 추가하여 제목과 축 레이블을 지정하여 산점도를 그릴 수 있습니다.
  • main : 그래프의 제목
  • xlab : 가로축 라벨
  • ylab : 세로축의 라벨


  • R 콘솔
    > plot(tree_height$altitude, tree_height$tree_height, main="標高と樹高との関係", xlab="標高(m)", ylab="樹高(m)")
    



    그룹별로 다른 마커로 산점도 그리기


  • 「동사면의 데이터를 흰 원(〇), 서쪽 사면의 데이터를 흑환(●)」이라고 하는 것처럼, 데이터의 그룹 마다 다른 마커로 표현할 때는, 이하와 같이 「처음은 산포도 의 테두리만 만들어 둔다는 것이 포인트입니다.
  • 마지막으로 범례를 표시시킬 필요가 있습니다만, 범례는 산포도의 묘화 범위(프레임내) 뿐만이 아니라, 그 외측에 표시시킬 수도 있는 것 같습니다.
  • 외부에 표시하는 것은 실제로 한 적이 없으므로 모릅니다 ...


  • R 콘솔
    > # type="n"を指定して、散布図の「枠」だけを作成する
    > plot(tree_height$altitude, tree_height$tree_height, main="標高と樹高との関係", xlab="標高(m)", ylab="樹高(m)", type="n")
    > # 東斜面のデータを白丸(〇)で描画する
    > points(tree_height$altitude[tree_height$direction == "east"], tree_height$tree_height[tree_height$direction == "east"], pch = 1)
    > # 西斜面のデータを黒丸(●)で描画する
    > points(tree_height$altitude[tree_height$direction == "west"], tree_height$tree_height[tree_height$direction == "west"], pch = 16)
    > # 散布図の右上に凡例を表示する。
    > legend("topright", pch = c(1, 16), legend = levels(tree_height$direction))
    

    좋은 웹페이지 즐겨찾기