웹 개발 입문
표와 지표CSV 읽어오기표를 검색하고 걸러내기편집 가능한 표그래프 그리기미니 프로젝트 · 데이터 대시보드
놀면 뭐 하니,
그냥 하는거야.

그래프 그리기

코딩냥

숫자가 잔뜩 든 표는 한눈에 안 들어온다냥. 그런데 그걸 그래프로 바꾸면 "아, 이게 제일 크구나" 가 바로 보인다냥. 오늘은 코드 한 줄로 그래프를 그리는 법을 배운다냥. Streamlit 은 이것도 아주 쉽다냥!

오늘의 학습 목표

  • st.line_chart 로 꺾은선 그래프를 그린다.
  • st.bar_chart 로 막대 그래프를 그린다.
  • 어떤 그래프를 언제 쓰는지 안다.
실습 준비·필요한 패키지와 버전
  • pandas2.2 이상표(DataFrame)로 데이터를 다루기
  • streamlit1.40 이상파이썬 코드로 웹 화면 만들기

설치하기 — 터미널에 그대로 붙여넣기

pip install "pandas>=2.2" "streamlit>=1.40"

설치 확인 — 버전 번호가 찍히면 성공

python -c "import pandas; print(pandas.__version__)"
python -c "import streamlit; print(streamlit.__version__)"

위 버전은 최소 기준이라, 더 높은 버전이 깔려 있으면 그대로 써도 된다냥. 버전이 안 찍히고 에러가 나면 설치가 안 된 거라 설치 명령을 다시 실행해보자냥.

1단계 · 꺾은선 그래프 — line_chart

코딩냥

꺾은선 그래프는 시간에 따라 변하는 값을 보여줄 때 좋다냥. 요일별 방문자 수, 월별 매출 같은 거다냥. 표(데이터프레임)를 넘기면 알아서 그려준다냥.

import streamlit as st
import pandas as pd

df = pd.DataFrame({
    "방문자": [10, 25, 18, 40, 33],
}, index=["월", "화", "수", "목", "금"])

st.line_chart(df)

index 가 가로축이라냥

index=["월", "화", ...] 가 그래프의 가로축(x축) 이 된다냥. 값들은 세로축(y축)에 올라간다냥. 표만 잘 만들면 그래프는 저절로 그려진다냥!

2단계 · 막대 그래프 — bar_chart

코딩냥

막대 그래프는 항목끼리 크기를 비교할 때 좋다냥. 어느 간식이 제일 인기인지, 어느 반 평균이 제일 높은지 같은 거다냥.

import streamlit as st
import pandas as pd

df = pd.DataFrame({
    "표": [12, 8, 20],
}, index=["참치", "닭가슴살", "츄르"])

st.bar_chart(df)

꺾은선 vs 막대, 언제 뭘 쓰냥

그래프어울리는 것
꺾은선(line)시간 흐름 (요일별, 월별 변화)
막대(bar)항목 비교 (간식별 인기, 반별 점수)

"흐름" 이면 꺾은선, "비교" 면 막대라고 외우면 편하다냥!

3단계 · CSV 데이터로 그래프 그리기

코딩냥

18강에서 배운 read_csv 와 합쳐보자냥. 파일에서 읽은 표의 한 열을 골라 그래프로 그릴 수 있다냥.

import streamlit as st
import pandas as pd

df = pd.read_csv("cats.csv")

st.bar_chart(df, x="이름", y="나이")

x 와 y 로 축을 골라준다냥

x="이름", y="나이" 처럼 어떤 열을 가로축·세로축에 쓸지 직접 정할 수 있다냥. 표에 열이 많을 때 유용하다냥!

4단계 · 직접 해보기

미션 · 일주일 기분 그래프

  • 월일 요일별 "기분 점수(110)" 를 딕셔너리로 만들고
  • st.line_chart 로 일주일 기분 변화를 그려보자냥.
  • 슬라이더로 특정 요일 점수를 바꾸면 그래프도 바뀌게 해보자냥(도전).

내 일주일이 그래프로 보이면 은근히 재밌다냥!

복습 퀴즈

Q1.시간에 따라 변하는 값(요일별 방문자 등)에 어울리는 그래프는?
Q2.항목끼리 크기를 비교할 때(간식별 인기 등) 어울리는 그래프는?
Q3.그래프의 가로축(x축)이 되는 것은?
코딩냥

그래프까지 그릴 수 있게 됐다냥! 이제 4부의 무기가 다 모였다냥 — 표, 파일, 필터, 그래프. 다음 시간엔 이걸 전부 합쳐서 진짜 대시보드 한 장을 완성해본다냥. 4부의 결승전이라냥!

22 / 33
이전4부 · 데이터 다루기 · 편집 가능한 표다음4부 · 데이터 다루기 · 미니 프로젝트 · 데이터 대시보드