본문 바로가기
반응형

2. 그래프 그리기 (고수준 함수)/hist() - 히스토그램11

R 히스토그램에 라인 추가하기 freq 옵션을 FALSE 로 설정합니다. lines 함수를 이용하여 아래 코드처럼 입력해줍니다. set.seed(1) data=rnorm(100,170,5) hist(data,freq=F) lines(density(data)) 2021. 10. 21.
R 히스토그램 x축, y축 눈금 설정하기 R 히스토그램 x축, y축 눈금 설정하기 오늘 코드 모아보기 #breaks 설정 brks=seq(4,8,0.2) #hist 그리기(제목,축이름,눈금 없음) hist(iris$Sepal.Length, breaks=brks, ann=FALSE,axes=FALSE,xlim=c(2,10),ylim=c(0,22)) #x축 눈금 추가 axis(side=1,at=seq(2,10,1)) #y축 눈금 추가 axis(side=2,at=seq(0,20,2)) #제목 추가 title(main="my histogram",xlab="Sepal Length",ylab="빈도") 따라하기 내장데이터인 iris 의 Sepal.Length 로 히스토그램을 그리겠습니다. 먼저 x값 범위를 알기 위해 최댓값과 최솟값을 구해봅시다. > mi.. 2020. 12. 9.
R 밀도(density) 히스토그램 히스토그램의 y값이 왜 1이 넘을까 R 히스토그램에서 밀도(density) 히스토그램으로 설정을 하면 전체 넓이가 1이 되게끔 그래프를 그려줍니다. 따라서 각 계급 간격의 합이 1보다 작다면 높이가 1보다 커질 수 있는 것입니다. 계급 간격이 0~0.1, 0.1~0.2 두개뿐이라고 해봅시다. 이때 밑변이 0.2이므로, 전체 넓이가 2이 되려면 각 높이의 합이 5가 되야 합니다. 예를들어 아래와 같은 계급값과 도수가 있다고 합시다. 160~170 : 5 170~180 : 5 상대도수를 계산하면 아래와 같습니다. 160~170 : 0.5 170~180 : 0.5 R 히스토그램에서의 density는 아래와 같습니다. 160~170 : 0.05 170~180 : 0.05 height=c(161,162,163,164,165,171,172,173,1.. 2020. 12. 9.
R 히스토그램 여러개 겹쳐그리기 (투명하게) R 히스토그램 여러개 겹쳐그리기 (투명하게) 오늘 코드 모아보기 #break 설정 x_ax=seq(02,8,0.2) #히스토그램 만들어서 저장, plot=FALSE로 설정하여 그려지지 않게함 hist1=hist(iris$Sepal.Length, breaks=x_ax, plot = FALSE) hist2=hist(iris$Sepal.Width, breaks=x_ax, plot = FALSE) #plot 함수로 히스토그램 그리기 plot(hist1, col=adjustcolor("red",alpha=0.5),ylim=c(0,40),ann=FALSE) plot(hist2, col=adjustcolor("blue",alpha=0.5), add = TRUE) #제목설정 title(main="my histogram.. 2020. 12. 9.
R 역 누적분포 히스토그램 R 역 누적분포 히스토그램 일반적인 누적분포를 계산하는 방법은 아래와 같습니다. data=c(1,2,2,3,3,3,4,4,4,4,5,5,5,5,5,6,6,6,6,6,6) 간격을 1로 설정하면 계급과 도수는 아래와 같습니다. 누적도수의 경우 간격을 1로 설정해야 그래프를 그리기가 수월합니다. 0-1 : 11-2 : 22-3 : 33-4 : 44-5 : 55-6 : 6 누적도수로 나타내면 아래와 같습니다. 0-1 : 11-2 : 32-3 : 63-4 : 104-5 : 155-6 : 21 여기서 말하는 '역'누적분포는 아래와 같습니다. 0-1 : 211-2 : 202-3 : 183-4 : 154-5 : 115-6 : 6 누적도수가 앞에서 부터의 누적이라면, 역누적도수는 뒤에서부터의 누적입니다. 아래의 절차로 .. 2020. 12. 8.
R 누적도수 그래프 (cumsum) R 누적도수 그래프 (cumsum) 누적도수 히스토그램을 이해하기 위해 한 가지 예시를 들겠습니다. 아래 벡터를 이용하여 누적도수 히스토그램을 그릴 것입니다. data=c(1,2,2,3,3,3,4,4,4,4,5,5,5,5,5,6,6,6,6,6,6) 간격을 1로 설정하면 계급과 도수는 아래와 같습니다. 누적도수의 경우 간격을 1로 설정해야 그래프를 그리기가 수월합니다. 0-1 : 11-2 : 22-3 : 33-4 : 44-5 : 55-6 : 6 누적도수로 나타내면 아래와 같습니다. 0-1 : 11-2 : 32-3 : 63-4 : 104-5 : 155-6 : 21 입력값이 히스토그램에 알맞지 않기 때문에 막대그래프로 그려야 합니다. 절차는 아래와 같습니다. 1) 도수 계산 (hist 함수)2) 누적도수 계산.. 2020. 12. 8.
R 밀도(density) 히스토그램 R에서 밀도(density) 히스토그램을 그리는 방법입니다. 히스토그램을 그릴 때 옵션에 freq를 FALSE로 바꿔주면 됩니다. 아래는 예시입니다. > data=c(1,2,2,3,3,3,4,4,4,4,5,5,5,5,5) > hist(data,freq=FALSE) y축 범위도 설정해봅시다. > hist(data,freq=FALSE,ylim=c(0,0.5)) 2020. 12. 8.
R 히스토그램에서 구간은 미만일까 이하일까. R 히스토그램에서 구간은 미만일까 이하일까. R 히스토그램을 그릴 때, 구간을 아래와 같이 나눴다고 해봅시다. 0~22~44~66~8 이때 구간의 부등호는 어떻게 될까요? 이상일까요 초과일까요, 이하일까요 미만일까요? 한번 확인해봅시다. 데이터 벡터를 만들겠습니다. 각 숫자별 숫자의 개수만큼의 원소가 있습니다. data=c(0,1,2,2,3,3,3,4,4,4,4,5,5,5,5,5,6,6,6,6,6,6,7,7,7,7,7,7,7,8,8,8,8,8,8,8,8) 히스토그램을 그려봅시다. > myhist=hist(data,breaks=seq(0,8,by=2))> myhist$breaks[1] 0 2 4 6 8 $counts[1] 4 7 11 15 각 계급의 도수는 아래와 같습니다. 0~2 : 42~4 : 74~6.. 2020. 12. 8.
[R 그래프] 히스토그램에 빈도값 추가하기 [R 그래프] 히스토그램에 빈도값 추가하기 먼저 히스토그램을 하나 그립시다. #data생성 set.seed(1) data=rnorm(100,170,5) #x축 최대,최솟값 확인 summary(data) #히스토그램 그리기 a=hist(data ,breaks=seq(150,190,by=2) ,col="red" ,main="my histogram" ,xlab="height(cm)" ,axes=FALSE) #y축 최댓값 max(a$counts) #축 설정 x_axis_tick=seq(150,190,by=2) axis(side=1,at=x_axis_tick) y_axis_tick=seq(0,max(a$counts),by=2) axis(side=2,at=y_axis_tick)#범례 설정 legend("toprig.. 2020. 8. 3.
R 히스토그램 2개 한 화면에 그리기 데이터는 iris데이터를 사용하겠습니다. R내장데이터입니다. 설명은 주석으로 달아놓았습니다. #break 설정 x_ax = seq(0, 10, 0.2) #히스토그램 만들어서 저장, plot=FALSE로 설정하여 그려지지 않게함 hist1 = hist(iris$Sepal.Length, breaks = x_ax, plot = FALSE) hist2 = hist(iris$Sepal.Width, breaks = x_ax, plot = FALSE) #plot 함수를 이용하여 hist1과 hist2를 그림. ann=FALSE로 설정하여 그래프이름과 축이름 나오지 않게함. axes=FALSE로 설정하여 축의 tick이 나오지 않게함. plot(hist1, col = adjustcolor("red", alpha = 0.. 2020. 5. 9.
R 히스토그램 그리는 방법, hist() R 히스토그램 그리는 방법, hist() #1. 방법 hist(x, breaks = "Sturges", freq = NULL, probability = !freq, include.lowest = TRUE, right = TRUE, density = NULL, angle = 45, col = NULL, border = NULL, main = paste("Histogram of" , xname), xlim = range(breaks), ylim = NULL, xlab = xname, ylab, axes = TRUE, plot = TRUE, labels = FALSE, nclass = NULL, warn.unused = TRUE, ...) breaks : (숫자로 입력)계급구간 수 또는 (벡터로 입력)간격fr.. 2019. 12. 2.
반응형