.set_style("darkgrid")
옵션 : white, whitegrid, dark, darkgrid, ticks(pairplot에서만 쓰임★)
.boxplot(x축, y축,data)
< boxplot의 옵션 >
hue = "카테고리로 나뉠 수 있는 컬럼"
palette = "Set3"
Set1~3 들어갈 수 있는 컬러명e.g>
sns.boxplot(x="day", y="total_bill",data=tips, hue="smoker",palette="Set3") plt.show()``` (캡쳐)
.swarmplot(x축, y축,data)
swarmplot 옵션
color = "0.5"
0~1로 흑백진하기 정할 수 있음.e.g>
sns.swarmplot(x="day",y="total_bill",data=tips, color="0.5") plt.show()
(캡쳐)
plt.figure(figsize=(8,6))
sns.boxplot(x="day",y="total_bill",data=tips)
sns.swarmplot(x="day",y="total_bill",data=tips, color="0.25")
plt.show()
이렇게 같이 쓰기도한다 (캡쳐)
.lmplot(x축, y축,data) : total_bill과 tip 사이 관계 파악
옵션
height=숫자
표의 사이즈sns.lmplot( x="x", y="y", data=anascombe.query("dataset == 'III'"), robust=True, ci=None, height=7, scatter_kws={'s':50}) # ci 신뢰구간 선택 plt.show()
ci=None
신뢰구간?
scatter_kws={'s':50}
표에 그려진 점에 사이즈 조정
hue = "카테고리"
카테고리 옵션을 넣어 더 시각화하여 비교
robust=True
.heatmap(x축, y축,data)
<옵션>
annot=True
데이터 정보 보이기
imt = "d"
정수형으로 f는 실수형
cmap="YlGnBu"
컬러 옵션
linewidth = 숫자
컬러바들끼리의 간격
plt.figure(figsize=(10,10))
sns.heatmap(
data=crime_anal_norm_sort[target_col],
annot=True,
fmt = "f" ,
linewidth = 0.5,
cmap="RdPu"
)
.pairplot(데이터)
데이터에 대해 모든 경우의 수의 그래프를 시각화해줌
옵션vars=["분석하고싶은 컬럼명","컬럼2"]
king="reg"
'scatter'
'kde'
'hist'
'reg' 회귀분석height = 숫자
sns.pairplot(data=crime_anal_norm, vars=["살인","강도","폭력"], kind="reg", height=3);
선언
import folium
import pandas as pd
import json
기본사용
folium.Map(location=[위도,경도], zoom_start=15)
zoom_startsms # 0~18
tiles="옵션"
옵션으로는 Stamen Toner, 디폴트는 OpenStreetMap
.save()
m.save("./folium(2).html")
folium.Marker()
- 지도에 마커 생성
folium.Marker( location=(37.5449834,127.0552657), : 위치 popup="성수역", : 마커 클릭시 뜨는 팝업 tooltip="Icon custom", : 마커에 마우스 올릴 시 뜨는 툴팁 icon=folium.Icon( : 아이콘 매서드 color="purple", : 마커 색깔 icon_color="white", : 아이콘 색깔 icon="amazon", : 아이콘 모양 anle=50, : 아이콘 각도 prefix="fa" : 아이콘 모양지정 ) ).add_to(m); : 지도에 추가사항 보내주는 매서드
.add_to(지도)
지도에 추가사항 넣어주기
folium.ClickForMarker()
- 지도 위에 마우스로 클릭 했을 때 마커를 생성해 줍니다
location=[37.5449834,127.0552657], zoom_start=15, tiles="OpenStreetMap" ) m.add_child(folium.ClickForMarker())
m.add_child(folium.ClickForMarker(popup="wow!"))
이렇게 내부에 popup 넣을 수 있음 (얘만 된다)
m.add_child(folium.LatLngPopup())
누르는 그곳에 위도, 경도를 보여줌.. (캡쳐)
Circle
folium.Circle( location=[ 37.5221, 127.0420], : 위치 radius=100, : 반지름 fill = True, : 채움 color = "darkred", : 테두리 색 fill_color="red", : 원 안 색 popup="circle", tooltip="Circle", ).add_to(m)
.CircleMarker는 같은 기능을함. 사이즈가 Circle보다 큰 정도
제이슨파일 불러오기
geo_path="../data/02. skorea_municipalities_geo_simple.json"
geo_str = json.load(open(geo_path,encoding="utf-8"))
numpy axis = 1 행, pandas 에서는 axis = 1이 열
crime_anal_station["검거"] = np.mean(tmp, axis=1)
피봇테이블과 멀티인덱스 제거
crime_loc = crime_loc_raw.pivot_table(
crime_loc_raw, index="장소", columns="범죄명", aggfunc=[np.sum]
)
crime_loc.columns = crime_loc.columns.droplevel([0,1])
그래프 그리기는 너무 재밌다.
그래프 그리는 것만 한 10일 했으면 좋겠다...
유용한 피봇테이블과도 친해져야 그래프도 그릴 수 있으니 골고루 연습해야할텐데