데이터 시각화 유형과 R 코드란? hist·boxplot·plot·barplot·pie와 상자그림 해석 쉽게 이해하기
1장 데이터 시각화에서 무엇을 먼저 판단해야 할까#
데이터 시각화 문제를 풀 때 가장 먼저 확인할 것은 무엇을 보여주고 싶은가입니다.
같은 숫자 데이터라도 분석 목적에 따라 적절한 차트가 달라집니다.
예를 들어 다음 상황을 생각할 수 있습니다.
- 연속형 데이터의 분포를 보고 싶다
- 이상치를 찾고 싶다
- 두 변수의 관계를 보고 싶다
- 범주별 크기를 비교하고 싶다
- 전체 중 각 항목의 비율을 보고 싶다
각 목적에 맞는 대표적인 시각화가 있습니다.
핵심 연결#
분포 → 히스토그램
분포·이상치 → 상자그림
두 변수 관계 → 산점도
범주 비교 → 막대 차트
구성비 → 파이 차트
입니다.
2장 ADsP에서는 R 코드도 함께 출제된다#
제공된 학습자료에서는 단순히:
이 상황에서는 어떤 그래프를 사용할까?
만 묻는 것이 아니라 R 코드를 보여준 뒤:
이 코드를 실행하면 어떤 차트가 그려지는가?
를 묻는 문제도 출제된다고 설명합니다.
따라서 다음 함수들을 코드와 차트 이름까지 연결해서 기억해야 합니다.
hist()boxplot()plot()barplot()pie()
3장 R 시각화 함수 핵심 비교#
| R 함수 | 생성 차트 | 적합한 데이터·목적 | 핵심 파라미터 |
|---|---|---|---|
hist(x) |
히스토그램 | 연속형 데이터 분포 | breaks= |
boxplot(x) |
상자그림 | 분포·이상치·집단 비교 | y ~ group |
plot(x, y) |
산점도 | 두 변수 관계 | type="l"이면 선 그래프 |
barplot(x) |
막대 차트 | 범주별 빈도·값 비교 | horiz=TRUE |
pie(x) |
파이 차트 | 구성비 | labels= |
시험 직전에는 이 표를 그대로 연결해서 기억하면 좋습니다.
4장 hist()는 무엇을 그리는가#
R에서:
hist(x)를 실행하면 히스토그램 Histogram을 그립니다.
히스토그램은 주로 연속형 데이터가 어떤 분포를 가지는지 확인하는 데 사용합니다.
예를 들어 학생 100명의 점수가 있다면:
- 어느 구간에 학생이 많이 몰려 있는가
- 좌우 대칭인가
- 한쪽으로 치우쳐 있는가
등을 확인할 수 있습니다.
핵심#
hist() = 히스토그램 = 연속형 분포
입니다.
5장 히스토그램의 핵심은 구간#
히스토그램은 연속형 데이터를 여러 구간으로 나눈 뒤 각 구간에 얼마나 많은 데이터가 포함되어 있는지를 막대 형태로 보여줍니다.
예를 들어 점수를:
0~10
10~20
20~30
처럼 구간으로 나눌 수 있습니다.
R에서는 이 구간 수와 관련하여 breaks 파라미터를 사용할 수 있습니다.
예:
hist(data, breaks=10)제공된 학습자료에서는 breaks=를 구간 수와 연결합니다.
6장 히스토그램 R 코드 읽기#
제공된 예시는 다음과 같습니다.
hist(data, breaks=10, main="분포", xlab="값", col="lightblue")각 요소를 읽어보면:
data
→ 그릴 데이터
breaks=10
→ 구간 수
main="분포"
→ 그래프 제목
xlab="값"
→ x축 이름
col="lightblue"
→ 막대 색상
입니다.
시험에서는 가장 먼저:
hist() → 히스토그램
을 읽어내면 됩니다.
7장 히스토그램과 막대 차트는 같은가#
아닙니다.
시험에서 매우 중요한 함정입니다.
겉으로 보면 둘 다 막대가 있기 때문에 비슷해 보이지만 목적이 다릅니다.
히스토그램#
연속형 데이터
분포 확인
막대 차트#
범주형 데이터
범주별 빈도나 값 비교
따라서:
hist()와barplot()은 같은 그래프다.
틀립니다.
8장 boxplot()은 무엇을 그리는가#
R에서:
boxplot(x)를 사용하면 상자그림 Box Plot을 그립니다.
상자그림은 하나의 그림에서:
- 데이터 분포
- 중앙값
- 사분위 범위
- 이상치
등을 확인할 수 있습니다.
또한 여러 집단의 분포를 비교하는 데도 유용합니다.
핵심#
boxplot() = 분포 + 이상치 + 집단 비교
입니다.
9장 그룹별 상자그림#
제공된 학습자료의 예시는 다음과 같습니다.
boxplot(score ~ group, data=df,
main="그룹별 점수 분포",
xlab="그룹", ylab="점수")여기서:
score ~ group
은 그룹에 따라 score의 분포를 비교한다는 의미로 이해할 수 있습니다.
즉 A그룹, B그룹, C그룹처럼 여러 집단의 점수 분포를 나란히 비교할 수 있습니다.
핵심#
boxplot(y ~ group) = 그룹별 y 분포 비교
입니다.
10장 상자그림에서 상자는 무엇인가#
상자그림에서 상자 부분은 IQR 범위를 나타냅니다.
제공된 학습자료에서는:
상자 = Q1~Q3
라고 설명합니다.
즉 전체 데이터 중 가운데 50%에 해당하는 데이터가 상자 안에 들어갑니다.
Q1#
제1사분위수
Q3#
제3사분위수
IQR#
Q3 - Q1
입니다.
핵심#
상자 = 중간 50% 데이터
입니다.
11장 상자 안의 선은 무엇인가#
상자 안에는 선이 하나 표시됩니다.
이 선은 중앙값 Median입니다.
시험에서 매우 자주 혼동하는 부분입니다.
상자그림 안의 선은 평균이다.
틀립니다.
정답은:
중앙값
입니다.
핵심#
Box Plot 안의 선 = Median
입니다.
12장 상자그림에서 평균을 직접 읽을 수 있는가#
제공된 학습자료에서는 다음 문장을 함정으로 제시합니다.
상자그림에서 평균을 직접 읽을 수 있다.
틀립니다.
기본적인 상자그림에서 핵심적으로 표시되는 것은:
- Q1
- 중앙값
- Q3
- 수염
- 이상치
입니다.
따라서 시험에서는:
상자 안의 선 = 평균 X / 중앙값 O
라고 기억해야 합니다.
13장 수염 Whisker은 무엇인가#
상자그림에서는 상자 위아래로 선이 뻗어 있습니다.
이를 수염 Whisker이라고 합니다.
제공된 학습자료에서는:
최솟값·최댓값, 단 이상치 제외
라고 설명합니다.
즉 이상치로 판단되는 점을 제외한 정상 범위의 데이터 끝부분을 보여줍니다.
핵심#
Whisker = 이상치 제외한 범위의 양 끝
입니다.
14장 상자그림의 점은 무엇인가#
상자그림에서 수염 바깥에 별도의 점으로 표시되는 값은 이상치 Outlier입니다.
제공된 학습자료 기준 이상치 기준은 다음과 같습니다.
Q1 - 1.5×IQR 미만
또는:
Q3 + 1.5×IQR 초과
입니다.
이 범위를 벗어나는 데이터는 상자그림에서 개별 점으로 표시될 수 있습니다.
15장 상자그림 이상치 기준 다시 보기#
앞서 데이터 전처리에서도 배운 공식입니다.
IQR = Q3 - Q1
하한:
Q1 - 1.5×IQR
상한:
Q3 + 1.5×IQR
따라서:
하한 미만
또는
상한 초과
이면 이상치 후보가 됩니다.
핵심#
Box Plot의 점 = IQR 기준 이상치
입니다.
16장 상자그림 구성 한눈에 보기#
| 요소 | 의미 |
|---|---|
| 상자 아래 | Q1 |
| 상자 내부 선 | 중앙값 Median |
| 상자 위 | Q3 |
| 상자 전체 | IQR, 중간 50% |
| 수염 | 이상치를 제외한 범위 |
| 개별 점 | 이상치 |
시험에서는 특히 중앙값과 평균을 바꾸어 출제하는 문제를 주의합니다.
17장 상자그림과 왜도#
제공된 학습자료에서는 다음과 같이 설명합니다.
상자가 오른쪽으로 치우쳐 있으면 = 왼쪽 꼬리 분포 = 음적 왜도
즉 데이터의 중심적인 부분이 상대적으로 오른쪽에 있고 왼쪽 방향으로 긴 꼬리가 나타나는 형태입니다.
핵심#
오른쪽에 몰림 → 왼쪽 꼬리 → 음의 왜도
로 기억합니다.
18장 plot(x, y)는 무엇을 그리는가#
R에서:
plot(x, y)를 사용하면 기본적으로 산점도 Scatter Plot를 그립니다.
산점도는 두 변수 사이의 관계를 확인할 때 사용합니다.
예를 들어:
- 키와 몸무게
- 광고비와 매출
- 공부시간과 시험점수
처럼 두 수치형 변수의 관계를 볼 수 있습니다.
핵심#
plot(x,y) = 기본 산점도
입니다.
19장 산점도로 무엇을 볼 수 있는가#
산점도를 이용하면 두 변수 사이의 관계를 시각적으로 확인할 수 있습니다.
예를 들어 x가 증가할 때 y도 증가한다면 양의 방향 관계가 나타날 수 있습니다.
반대로 x가 증가할 때 y가 감소한다면 음의 방향 관계를 볼 수 있습니다.
점들이 특정한 방향 없이 흩어져 있다면 뚜렷한 관계가 약할 수 있습니다.
따라서 제공된 학습자료에서는 산점도를:
두 변수 상관관계
와 연결합니다.
20장 plot()은 항상 산점도인가#
아닙니다.
시험에서 매우 중요한 함정입니다.
제공된 학습자료에서는:
plot(x, y, type="l")처럼 type="l"을 지정하면 선 그래프 Line Graph가 된다고 설명합니다.
따라서:
plot(x,y)는 어떤 옵션에서도 항상 산점도다.
틀립니다.
핵심#
plot() 기본 = 점
type="l" = 선
입니다.
21장 type="l"의 l은 무엇인가#
l은 Line을 떠올리면 쉽습니다.
즉:
plot(x, y, type="l")은 x와 y를 선으로 연결한 그래프를 생성합니다.
시험에서 코드만 보여주고 차트 유형을 묻는다면 type을 반드시 확인해야 합니다.
22장 산점도에 회귀선 추가하기#
제공된 학습자료의 예시는 다음과 같습니다.
plot(x, y, main="산점도", pch=16, col="blue")
abline(lm(y ~ x), col="red", lwd=2)첫 번째 줄은 산점도를 만듭니다.
두 번째 줄:
abline(lm(y ~ x))은 선형회귀모형을 이용해 회귀선을 추가합니다.
23장 lm()과 abline() 연결#
앞에서 R 회귀분석에서 다음 함수를 배웠습니다.
lm(y ~ x)이는 y를 x로 설명하는 선형회귀모형을 생성합니다.
여기에:
abline()을 사용하면 해당 직선을 기존 그래프에 추가할 수 있습니다.
즉:
lm() = 회귀모형
abline() = 회귀선 표시
로 연결할 수 있습니다.
24장 pch와 lwd는 무엇인가#
제공된 코드에는:
pch=16과:
lwd=2가 등장합니다.
이 문서에서 시험의 핵심은 차트 종류를 파악하는 것이지만 코드의 역할도 함께 보면 이해가 쉽습니다.
pch
→ 점의 모양과 관련
lwd
→ 선의 굵기와 관련
입니다.
하지만 우선순위는:
plot() → 산점도
abline(lm()) → 회귀선
을 읽어내는 것입니다.
25장 barplot()은 무엇을 그리는가#
R에서:
barplot(x)을 사용하면 막대 차트 Bar Chart를 그립니다.
제공된 학습자료에서는 막대 차트를:
범주별 빈도 또는 값 비교
에 적합한 시각화로 설명합니다.
예를 들어:
A상품 → 120개
B상품 → 90개
C상품 → 150개
처럼 범주별 판매량을 비교할 수 있습니다.
핵심#
barplot() = 범주 비교
입니다.
26장 막대 차트와 히스토그램 차이#
두 그래프의 차이는 반드시 기억해야 합니다.
barplot()#
범주형
예:
서울 / 부산 / 대구
상품 A / B / C
hist()#
연속형
예:
키
몸무게
점수
나이
입니다.
따라서:
bar = 범주
hist = 연속 분포
라고 기억합니다.
27장 horiz=TRUE는 무엇인가#
제공된 학습자료에서는 barplot()의 핵심 파라미터로:
horiz=TRUE를 제시합니다.
이는 막대를 가로 방향으로 표시합니다.
기본적인 세로 막대 대신 수평 막대 차트를 만드는 것입니다.
핵심#
horiz=TRUE = 가로 막대
입니다.
28장 pie()는 무엇을 그리는가#
R에서:
pie(x)를 사용하면 파이 차트 Pie Chart를 그립니다.
파이 차트는 전체에서 각 항목이 차지하는 구성비를 표현합니다.
예를 들어 시장점유율이:
A기업 → 50%
B기업 → 30%
C기업 → 20%
이라면 파이 차트로 구성비를 표현할 수 있습니다.
핵심#
pie() = 구성비
입니다.
29장 pie()의 labels 파라미터#
제공된 학습자료에서는 pie()의 핵심 파라미터로:
labels=를 제시합니다.
이는 각 조각에 표시할 이름을 지정하는 데 사용합니다.
예를 들어 항목의 이름을:
A
B
C
처럼 표시할 수 있습니다.
시험에서는 우선:
pie() → 파이 차트 → 구성비
연결이 중요합니다.
30장 어떤 상황에 어떤 시각화를 사용할까#
시험에서는 상황을 문장으로 제시하고 가장 적절한 차트를 고르게 할 수 있습니다.
연속형 데이터 분포#
→ 히스토그램
중앙값·사분위수·이상치#
→ 상자그림
두 수치 변수의 관계#
→ 산점도
범주별 값 비교#
→ 막대 차트
전체 중 비율#
→ 파이 차트
이 기준으로 판단하면 됩니다.
31장 예제 1: 학생 점수 분포#
질문:
학생 1,000명의 시험점수 분포를 확인하고 싶다.
점수는 연속형 데이터이고 전체적인 분포를 보고 싶습니다.
따라서:
히스토그램
이 적합합니다.
R에서는:
hist(score)와 연결합니다.
32장 예제 2: 반별 시험점수 비교#
질문:
A반, B반, C반의 점수 분포와 이상치를 비교하고 싶다.
여러 집단의:
- 중앙값
- IQR
- 이상치
- 분포
를 함께 보고 싶습니다.
따라서:
상자그림
이 적합합니다.
예:
boxplot(score ~ class)입니다.
33장 예제 3: 광고비와 매출 관계#
질문:
광고비가 늘어날수록 매출이 증가하는지 보고 싶다.
두 수치형 변수:
광고비
매출
사이의 관계를 봅니다.
따라서:
산점도
를 사용할 수 있습니다.
R:
plot(ad, sales)입니다.
34장 예제 4: 상품별 판매량 비교#
질문:
A·B·C·D 상품의 판매량을 비교하고 싶다.
상품이라는 범주별 값을 비교합니다.
따라서:
막대 차트
입니다.
R:
barplot(sales)입니다.
35장 예제 5: 시장점유율#
질문:
회사별 시장점유율 구성비를 보여주고 싶다.
전체 100%에서 각 기업의 비중을 보여주려는 목적입니다.
따라서:
파이 차트
를 사용할 수 있습니다.
R:
pie(share)입니다.
36장 hist() 시험 함정#
hist()는 범주별 빈도를 비교하기 위한 막대 차트 함수다.
틀립니다.
hist()는 제공된 학습자료에서 연속형 데이터의 분포 확인과 연결합니다.
범주 비교는 barplot()입니다.
37장 boxplot() 시험 함정#
상자그림의 가운데 선은 평균을 나타낸다.
틀립니다.
제공된 학습자료에서는:
중앙값 Median
입니다.
38장 수염 시험 함정#
상자그림의 수염은 이상치를 포함한 전체 최솟값과 최댓값을 항상 연결한다.
제공된 학습자료 기준 틀립니다.
수염은 이상치를 제외한 범위와 연결합니다.
이상치는 별도의 점으로 표시됩니다.
39장 plot() 시험 함정#
plot(x,y)는 옵션과 관계없이 항상 산점도다.
틀립니다.
제공된 학습자료에서는:
type="l"이면 선 그래프라고 설명합니다.
40장 barplot() 시험 함정#
barplot()은 연속형 데이터의 분포를 구간별로 보여주는 함수다.
틀립니다.
그것은 hist()입니다.
barplot()은 범주별 값이나 빈도를 비교합니다.
41장 pie() 시험 함정#
pie()는 두 연속형 변수의 상관관계를 보여주는 데 사용하는 함수다.
틀립니다.
두 변수 관계는 산점도와 연결합니다.
pie()는 구성비를 나타냅니다.
42장 ADsP 시험에서 자주 헷갈리는 함정#
함정 1. hist와 barplot은 같은 용도다#
틀립니다.
hist → 연속형 분포
barplot → 범주 비교
함정 2. boxplot에서 상자 안의 선은 평균이다#
틀립니다.
중앙값입니다.
함정 3. boxplot의 점은 정상 데이터의 평균이다#
틀립니다.
제공된 학습자료에서는 이상치와 연결합니다.
함정 4. IQR은 Q1-Q3이다#
틀립니다.
IQR은:
Q3 - Q1
입니다.
함정 5. plot(x,y)는 무조건 산점도다#
틀립니다.
type="l"이면 선 그래프입니다.
함정 6. barplot의 horiz=TRUE는 세로 막대를 의미한다#
틀립니다.
가로 막대입니다.
함정 7. pie()는 구성비 표현과 관계없다#
틀립니다.
구성비가 대표적인 용도입니다.
43장 R 함수만 보고 차트를 맞히는 법#
시험에 다음 코드가 나오면 즉시 대응해야 합니다.
hist(x)→ 히스토그램
boxplot(x)→ 상자그림
plot(x, y)→ 기본 산점도
plot(x, y, type="l")→ 선 그래프
barplot(x)→ 막대 차트
pie(x)→ 파이 차트
입니다.
44장 주요 파라미터 시험 직전 암기#
hist()#
breaks=
→ 구간 수
barplot()#
horiz=TRUE
→ 가로 막대
pie()#
labels=
→ 항목 이름
plot()#
type="l"
→ 선 그래프
boxplot()#
y ~ group
→ 그룹별 y 분포 비교
입니다.
45장 상자그림 시험 직전 암기#
상자
→ Q1~Q3
→ 가운데 50%
상자 안 선
→ Median
수염
→ 이상치 제외 범위
점
→ Outlier
IQR
→ Q3-Q1
이상치
→ Q1−1.5IQR 미만
또는
→ Q3+1.5IQR 초과
입니다.
46장 왜도 시험 직전 암기#
제공된 학습자료 기준:
상자가 오른쪽으로 치우침
↓
왼쪽 꼬리
↓
음적 왜도
로 연결합니다.
시험에서는 꼬리 방향을 기준으로 왜도를 판단하는 것이 중요합니다.
47장 시각화 선택 시험 직전 암기#
연속형 분포
→ Histogram
분포·이상치
→ Box Plot
두 변수 관계
→ Scatter Plot
범주 비교
→ Bar Chart
구성비
→ Pie Chart
한 줄로:
분포 hist / 이상치 box / 관계 plot / 범주 bar / 비율 pie
라고 기억하면 됩니다.
48장 데이터 시각화 핵심 비교표#
| 목적 | 차트 | R 함수 |
|---|---|---|
| 연속형 분포 | 히스토그램 | hist() |
| 이상치·분포 | 상자그림 | boxplot() |
| 두 변수 관계 | 산점도 | plot(x,y) |
| 시간·순서에 따른 선 | 선 그래프 | plot(..., type="l") |
| 범주 비교 | 막대 차트 | barplot() |
| 구성비 | 파이 차트 | pie() |
데이터 시각화와 R 코드 FAQ#
hist()는 어떤 그래프를 그리는가#
히스토그램입니다.
히스토그램은 어떤 데이터에 적합한가#
제공된 학습자료에서는 연속형 데이터의 분포 확인에 적합하다고 설명합니다.
breaks=는 무엇인가#
히스토그램 구간 수와 관련된 파라미터입니다.
boxplot()은 무엇을 그리는가#
상자그림을 그립니다.
boxplot(score ~ group)은 무엇을 의미하는가#
그룹별 score의 분포를 비교하는 상자그림입니다.
상자그림의 상자는 무엇인가#
Q1부터 Q3까지의 IQR 범위이며 중간 50% 데이터를 나타냅니다.
상자 안의 선은 평균인가#
아닙니다. 중앙값 Median입니다.
상자그림에서 이상치는 어떻게 표시되는가#
제공된 학습자료에서는 수염 밖의 개별 점으로 표시된다고 설명합니다.
이상치 기준은 무엇인가#
Q1−1.5×IQR 미만 또는 Q3+1.5×IQR 초과입니다.
plot(x,y)는 무엇을 그리는가#
기본적으로 산점도입니다.
plot(x,y,type="l")는 무엇을 그리는가#
선 그래프입니다.
산점도에 회귀선을 어떻게 추가하는가#
제공된 예시에서는:
abline(lm(y ~ x))를 사용합니다.
barplot()은 언제 사용하는가#
범주별 빈도나 값을 비교할 때 사용합니다.
horiz=TRUE는 무엇인가#
가로 막대 차트를 만듭니다.
pie()는 무엇을 표현하는가#
구성비를 시각화합니다.
hist와 barplot의 차이는 무엇인가#
hist는 연속형 데이터의 분포, barplot은 범주별 값을 비교합니다.
자기 점검#
다음 질문에 바로 답할 수 있는지 확인해봅니다.
hist()가 어떤 차트를 만드는지 알고 있는가?- 히스토그램과 막대 차트의 차이를 설명할 수 있는가?
breaks=의 의미를 알고 있는가?boxplot()의 용도를 알고 있는가?- 상자 안의 선이 중앙값이라는 것을 알고 있는가?
- IQR이 Q3-Q1이라는 것을 기억하고 있는가?
- 이상치 기준을 말할 수 있는가?
- 수염과 이상치를 구분할 수 있는가?
plot(x,y)의 기본 결과를 알고 있는가?type="l"의 의미를 알고 있는가?abline(lm())가 무엇을 추가하는지 알고 있는가?barplot()이 범주 비교라는 것을 알고 있는가?horiz=TRUE가 가로 막대라는 것을 알고 있는가?pie()가 구성비와 연결된다는 것을 알고 있는가?- 상황에 따라 적절한 차트를 선택할 수 있는가?
이 글을 마치며#
ADsP의 데이터 시각화 문제는 목적과 R 함수를 연결해서 기억하는 것이 중요합니다.
가장 먼저 다음 다섯 가지를 기억합니다.
hist() = 히스토그램 = 연속형 분포
boxplot() = 상자그림 = 분포·이상치
plot(x,y) = 산점도 = 두 변수 관계
barplot() = 막대 차트 = 범주 비교
pie() = 파이 차트 = 구성비
특히 상자그림에서는:
상자 = Q1~Q3
상자 안 선 = 중앙값
수염 = 이상치를 제외한 범위
점 = 이상치
를 정확하게 구분해야 합니다.
이상치는 제공된 학습자료 기준:
Q1−1.5×IQR 미만
또는:
Q3+1.5×IQR 초과
입니다.
R 코드에서는 파라미터도 중요합니다.
hist의 breaks = 구간 수
plot의 type="l" = 선 그래프
barplot의 horiz=TRUE = 가로
pie의 labels = 항목 이름
시험 직전에는 다음 다섯 줄로 압축해서 기억하면 됩니다.
분포=hist / 이상치=boxplot / 관계=plot / 범주=barplot / 구성비=pie
Box의 선=평균이 아니라 중앙값
IQR=Q3−Q1
plot(..., type="l")=선 그래프
hist와 barplot은 다르다 — 연속형 분포 vs 범주 비교