공부하기 좋은 날씨다.
bar plot을 쌓아서 나타내고, 값에 대한 비율도 나타낼 수 있어
상황에 따라 유용할 것 같다.
bar를 그릴 때, bottom=data['name']
과 같이 표현할 수 있다.
실제 값과 그를 표현하기 위해 사용하는 잉크 양은 비례해야한다.
당연한 원리지만, 꼭 지켜야 시각화의 본질을 지킬 수 있을 것 같다.
눈에 더 예뻐보인다고 맨 아래 축을 0이 아닌 값으로 바꾸는 식으로 정하면
잉크 양이 비례하지 않고, 보는 사람에게 혼동을 줄 수 있다.
정확한 정보 전달을 위해서는 정렬도 필요하다.
데이터의 종류에 따른 정렬 순서는 아래와 같다
- 시계열 : 시간순
- 수치형 : 크기순
- 순서형 : 범주의 순서대로
- 명목형 : 범주의 값 따라 정렬
또한, Bar 사이에 어느 정도 간격을 두는 것이 가독성에 좋다.
데이터를 잘 보여주기 위해서는, 단순한 2차원 그래프를 활용하는 것이 좋다.
매번 head로 값 몇 개를 불렀는데, sample 이라는 메소드로 랜덤하게 가져올 수 있다 ,,!
.describe(include='all)
메소드를 통해서 전체적인 맥락 훑기groupby
를 통해서 특정 feature들만 뽑아서 볼 수 있다.sharey=True
로 정해주면 y축의 범위가 같아진다.ax.set_ylim(0,100)
처럼 범위 직접 정해주기ax.spines['top'].set_visible(False)
ax의 parameter로 label='label1'
을 전달해주고, 마지막에 .legend()
로 범주를 출력한다.
5개 이하의 선을 사용하는 것이 가독성에 좋다.
Noise를 제거하는 것이 패턴과 추세 파악에 좋으므로, smoothing 기법을 사용하자.
관측값에 점을 추가하면 값을 분명히 확인할 수 있다.
두 데이터 간에 상관 관계가 없다면 이중 축을 쓰는 것보다 차라리 두 개로 나누는게 더 좋다.
범례 대신에 그래프 끝에 이름을 넣어주는 것이 식별에 도움이 된다.
그래프의 최대값, 최소값, 중요한 값 등 특정 포인트를 추가하면 보여주려는 바를 더 효과적으로 보여줄 수 있다.
클러스터, 값들 사이의 gap, 이상치를 확인하기에 유용한 Plot이다.
서두르지 말고,
한 발짝씩 나아가기