데이터 분석 및 시각화

데이터 분석 및 시각화/데이터 시각화

[SUPERSET] 대시보드 REACT 임베딩 하는법(동적 쿼리)

SUPERSET 관련해서, 임베딩 하는 법을 많이 찾아봤는데 자료가 그렇게 많진 않습니다. 그래서 삽질의 삽질을 거듭한 결과, 찾아낸 방법에 대해서 소개드립니다! 제 상황을 말씀드리면, SUPERSET에 있는 대시보드를 외부에 공개해야했고, SUPERSET 서버를 따로 써서 프론트에 임베딩해야하는 상황이였습니다. 이 과정에서 프론트 단에서 동적 쿼리를 전달할 방법이 필요한 상황이였습니다. 그래서 따로 superset 서버를 만들었고, 이 superset 대시보드를 프론트에 임베딩해서 보여줄 계획이였습니다. 서버 설정 OS : Ubuntu 22.04 Python : 3.10 Superset : 2.10 1. 설치 및 superset_config.py 파일 설정 설치 과정은 아래 링크에 적어놓았습니다. ht..

데이터 분석 및 시각화/데이터 시각화

[SUPERSET] 아파치 슈퍼셋(superset) 소개 및 설치

소개 Apache Superset은 데이터 시각화 및 비즈니스 인텔리전스(Business Intelligence, BI) 플랫폼으로, 데이터 분석 및 대시보드 작성을 위한 다양한 기능과 도구를 제공합니다. 다음은 Apache Superset의 주요 특징과 장단점입니다: 장점 다양한 데이터 소스 지원: Apache Superset은 다양한 데이터 소스에 대한 연결과 쿼리 작성을 지원합니다. 주요 데이터베이스 시스템과 연동하여 데이터를 시각화하고 대시보드를 생성할 수 있습니다. 시각화 기능: Superset은 다양한 시각화 차트와 그래프를 제공하여 데이터를 직관적으로 이해하고 전달할 수 있습니다. 사용자는 차트 유형, 축 설정, 필터링 등을 사용하여 데이터를 시각적으로 탐색하고 인사이트를 발견할 수 있습니다..

데이터 분석 및 시각화/데이터 시각화

[Python] folium

folium folum은 파이썬 라이브러리로 지도 데이터를 시각화하는데 아주 쉽게 도와줍니다 leaflet.js를 기반으로 만들어졌습니다. 지도에 마커를 표현하거나 범위를 나타내는 다양한 도형을 입력할 수 있습니다. conda에 folium 설치하기 아나콘다 프롬프트를 켜고 다음의 명령을 입력합니다. conda install -c conda-forge foloium folium 간단한 예제 우리가 현재 위치한 곳의 위도와 경도 정보입니다. 위도와 경도 각각을 latitude, longitude에 저장해봅시다. # 플레이데이터 독산 위도, 경도 latitude, longitude = (37.468251, 126.886212)해당 위도, 경도 정보를 바탕으로 지도에 표시해봅시다. 또 Marker를 달아 위치..

데이터 분석 및 시각화/파이썬

[Python]Pandas at VS loc

at 단 하나의 값에만 접근할 수 있게 설계된 인덱서 loc 다량의 자료에 접근하기 위해 설계된 인덱서 팁 단 하나의 자료에 접근할 때는 at을 쓰는 것이 속도가 훨씬 빠르다. 패스트 인덱싱이라고도 한다. 예제 #### at 사용하기 def split_multicolumn(Series): df = pd.DataFrame(False, columns = (Series.dropna().str.split(';').str[0].unique()), index = Series.index) for idx, rep in Series.str.split(';').items(): if isinstance(rep, list): for one in rep: df.at[idx, one.strip()] ..

데이터 분석 및 시각화/파이썬

[Python]Pandas 특정 문자열 포함 행 찾고 대체하기(str.contains, where)

np.nan 값이 섞인 Series 자료형에 대해 특정 문자 값이 포함되었는지 사용할 수 있는 메서드로 contains()가 있습니다. 첫 인자로 포함된 것을 찾을 문자열을 넣어줍니다. na 키워드 인수를 활용하면 NaN 값을 대신할 값을 넣을 수 있습니다. _공식문서_str.contains _공식문서 where 예제 survey_df.where(~survey_df['Gender'].str.contains(';', na = False), np.nan, inplace = True) 코드 설명 survey_df의 Gender 컬럼 중 ;를 포함하는 행 찾기(na의 경우에는 False 처리) 앞 선 메소드의 True로 반환된 값들을 False로 전환(비트 연산자 ~) where로 ..

데이터 분석 및 시각화/파이썬

[Python] Pandas 시리즈 문자열 변경 메소드(replace)

YearsCode 컬럼의 'Less than 1 year'의 값은 0으로 변경하고, 'More than 50 years'의 값은 51로 일괄적으로 변경합니다. replace 메소드 survey_df['YearsCode'].replace('Less than 1 year', 0, inplace = True) survey_df['YearsCode'].replace('More than 50 years', 51, inplace = True)공식문서 링크 https://pandas.pydata.org/docs/reference/api/pandas.Series.replace.html?highlight=replace#pandas.Se..

데이터 분석 및 시각화/데이터 시각화

[Python] Seaborn(stripplot, swarmplot, catplot, jointplot, pairplot, Pandas pivot table), Pandas Pivot table

stripplot strip plot은 카테고리마다의 scatter plot을 그립니다. 그리는 방식으론 jitter를 사용하는데 이 방식은 다른 축의 방향으로 랜덤하게 점을 찍어 겹치는 부분을 줄입니다. 이 방식은 box plot과 violin plot의 보완이 될 수 있습니다. 단 하나의 숫자형 column을 할당한 경우에는 각 점들이 다른 축의 방향으로 랜덤하게 "jittered'된 단일 변량에 대한 분포(univariate distribution)의 형태를 보여줍니다. tips = sns.load_dataset("tips") sns.stripplot(data = tips, x = 'total_bill') y축의 방향에 카테고리 변량을 추가했습니다. 각 카테고리에 해당하는 데이터들의 분포 형태를 비..

데이터 분석 및 시각화/데이터 시각화

[Python] Seaborn(barplot, boxplot, violinplot)

barplot x와 hue를 카테고리화해서 body_mass_g 값의 평균과 신뢰구간(confidence intervals)을 구해서 바 플롯으로 표현하고 있습니다. df = sns.load_dataset('penguins') sns.barplot(data = df, x = 'species', y = 'body_mass_g', hue = 'sex') box plot 박스-휘스커 플롯(Box-Whisker Plot) 혹은 간단히 박스플롯이라 부릅니다. 박스 플롯은 박스와 박스 바깥의 선(whisker)으로 이루어집니다. 박스는 실수 값 분포에서 1사분위수(Q1)와 3사분위수(Q3)를 뜻합니다. 이 3사분위수와 1사분위수의 차이(Q3 - Q1)를 IQR(Interquartile range)라고 합니다. 박스..

데이터 분석 및 시각화/데이터 시각화

[Python] Seaborn(style 세팅, 카운트 플롯, 히스토그램(displot))

Seaborn이란 Seaborn은 Matplotlib을 기반으로 다양한 색상 테마와 통계용 차트 등의 기능을 추가한 시각화 패키지입니다. 기본적인 시각화 기능은 Matplotlib 패키지에 의존하며 통계 기능은 Statsmodels 패키지에 의존합니다. 테마를 활용해서 스타일 적용하기 set_theme()는 global 범위의 테마를 적용해서 그래프를 쉽게 꾸밀 수 있습니다. style과 palette 키워드 인수를 활용해서 그 값을 설정합니다. style : darkgrid, whitegrid, dark, white, ticks, ... palette : pastel, husl, Spectral, flare, ... (참고) set_context()의 인수로 paper, notebook, talk, p..

데이터 분석 및 시각화/데이터 시각화

[Python] matplotlib - 차트

바 차트(bar chart) x 데이터가 카테고리 값인 경우에는 bar 명령과 barh 명령으로 바 차트(bar chart) 시각화를 할 수 있습니다. 가로 방향으로 바 차트를 그리려면 barh 명령을 사용합니다. 바 차트 작성시 주의점은 첫번째 인수인 left 가 x축에서 바(bar)의 왼쪽 변의 위치를 나타낸다는 점입니다. import matplotlib as mpl import matplotlib.pyplot as plt import numpy as np y = [2,3,1] x = ['가','나','다'] plt.title("Bar Chart") plt.bar(x,y) plt.xlabel('가나다') plt.ylabel('빈도 수') plt.show() 각 bar 마다 색상을 적용할 수 있습니다...

데이터 분석 및 시각화/데이터 시각화

[Python] Matplotlib - 폰트 설정법

절차 폰트 다운로드 후 특정 경로 저장(예시로는 C:/python/font) 2. 아래 코드 실행(폰트 경로, 폰트 이름 변경 후 실행) import matplotlib.font_manager as font_manager import matplotlib as mpl # 폰트 파일 다운로드 받아서 경로 설정한 곳에 저장 font_dir = ['C:/python/font'] for font in font_manager.findSystemFonts(fontpaths=font_dir): print(mpl.font_manager.FontProperties(fname=font).get_name()) # 폰트명 확인 font_manager.fontManager.addfont(font) # 폰트 추가 #..

데이터 분석 및 시각화/데이터 시각화

[Python] Matplotlib - Figure, Axes, Axis, Artist

Figure Matplotlib는 data를 Figure(e.g. windows, Jupyter widgets, etc.)에 x-y 좌표의 그래프로 표시합니다(3차원은 x-y-z, 극좌표는 세타-r 등). 각각의 Figure는 하나 이상의 Axes를 갖습니다. 가장 간단하게 Figure, Axes 객체를 만드는 방법은 pyplot.subplots()을 사용하는 것입니다. 그 후 Axes.plot()를 활용하여 Axes에 데이터를 그립니다. fig, ax = plt.subplots() ax.plot([1,2,3,4], [1,4,2,3]); Figure는 전체 그림(그래프)을 의미하는 객체입니다. Figure 객체는 Axes, 특수 Artist 그룹(title, figure legends, colorbar,..

우상욱
'데이터 분석 및 시각화' 카테고리의 글 목록