생성형 AI/생성형 AI와 코딩

생성형 AI와 코딩 3-1, : [웹 대시보드] AI와 함께 만드는 실시간 매출 현황판 (Streamlit 활용)

에이티에스 2026. 1. 16. 11:13

1. 서론: "보고를 위한 보고"는 이제 그만!

직장인에게 '보고'는 숙명과도 같지만, 그 과정은 늘 고단합니다. 매일 아침 전날의 매출 데이터를 엑셀로 내려받고, 수십 개의 셀을 복사해서 붙여넣고, 흐트러진 차트 범위를 수정하느라 정작 중요한 '분석'은 시작도 하기 전에 진이 빠지곤 하죠. 하지만 이제 정적인 엑셀 파일과 씨름하는 시대는 끝났습니다.

 

파이썬의 Streamlit을 활용하면, 데이터가 바뀌는 즉시 그래프가 살아 움직이는 **'나만의 실시간 웹 대시보드'**를 가질 수 있습니다. 복잡한 웹 프로그래밍 지식이 없어도 괜찮습니다. AI에게 데이터의 구조를 설명하고 "보기 좋은 현황판을 만들어줘"라고 요청하기만 하면 됩니다. 이제 지루한 '단순 반복 노가다'는 AI에게 맡기고, 당신은 데이터가 말해주는 진짜 전략과 인사이트에만 집중하는 스마트한 일상을 시작해 보세요.

 

 

 

 

반응형

 


 

 

2. 핵심 도구: Streamlit(스트림릿)이란?

복잡한 코딩의 세계에서 Streamlit은 마치 **'레고 블록'**과 같습니다.

보통 웹사이트 하나를 만들려면 "뼈대를 세우고(HTML), 색칠을 하고(CSS), 버튼이 눌리게 만드는(JS)" 복잡한 과정을 거쳐야 합니다. 하지만 Streamlit은 이미 만들어진 예쁜 블록들을 파이썬 코드로 **"여기에는 그래프를 놔줘", "옆에는 버튼을 놔줘"**라고 말만 하면 알아서 조립해 줍니다.

 

💡 왜 초보자에게 최고인가요?

  • "파이썬만 알면 끝": 다른 웹 언어를 배울 필요가 전혀 없습니다.
  • "새로고침이 필요 없음": 코드를 수정하고 저장하는 즉시 웹 화면에 바로 반영됩니다. 마치 실시간으로 그림을 그리는 것과 같죠.
  • "전문가급 디자인": 내가 디자인을 못 해도, 스트림릿이 처음부터 세련된 다크 모드와 깔끔한 폰트를 기본으로 제공합니다.

 

보통 웹사이트를 만들려면 HTML, CSS, JavaScript 같은 복잡한 기술을 배워야 합니다. 하지만 Streamlit은 오직 파이썬만으로 웹 화면을 구성할 수 있게 해줍니다.

  • 슬라이더: 날짜 범위를 조절하면 그래프가 즉시 바뀝니다.
  • 차트: 마우스를 올리면 상세 수치가 나타나는 인터랙티브 그래프를 지원합니다.
  • 배포: 클릭 몇 번으로 동료들이 접속할 수 있는 웹 주소를 만들 수 있습니다.

 

처음 시작하는 분들은 딱 세 가지만 기억하세요!

  1. 재료 준비(Data): 내 PC에 있는 엑셀이나 CSV 파일을 불러옵니다. (pd.read_csv)
  2. 도구 놓기(Widgets): "데이터를 고를 수 있는 상자를 만들어줘"라고 명령합니다. (st.selectbox)
  3. 결과 보기(Charts): "이 데이터를 꺾은선 그래프로 그려줘"라고 하면 끝입니다. (st.line_chart)

 

 

반응형

 


 

 

3. 실전: AI에게 대시보드 제작 맡기기

데이터 파일(CSV 또는 Excel)을 준비하고 AI에게 다음과 같이 요청해 보세요.

 

[프롬프트 입력] "매출 데이터가 담긴 sales.csv 파일을 읽어서 웹 대시보드를 만들어주는 Streamlit 코드를 짜줘.

  1. 날짜별 매출 추세를 보여주는 선 그래프(Line Chart)
  2. 제품 카테고리별 비중을 보여주는 파이 차트(Pie Chart)
  3. 사이드바에는 지역을 선택할 수 있는 필터를 넣어줘."

 

 

반응형

 


 

4. 코드 엿보기: 단 몇 줄로 끝나는 웹사이트

AI가 생성해 줄 핵심 코드는 대략 이런 모습일 겁니다.

Python
 
import streamlit as st
import pandas as pd
import plotly.express as px

# 1. 페이지 제목 및 데이터 불러오기
st.title("📊 실시간 매출 현황 대시보드")
df = pd.read_csv("sales.csv")

# 2. 사이드바 필터 만들기
selected_region = st.sidebar.selectbox("지역 선택", df['Region'].unique())
filtered_df = df[df['Region'] == selected_region]

# 3. 차트 그리기
fig = px.line(filtered_df, x='Date', y='Sales', title=f"{selected_region} 매출 추이")
st.plotly_chart(fig)

 

 

 

 

반응형

 


 

5. 응용하기: 내 업무에 딱 맞는 커스텀 기능

 

단순히 그래프를 보여주는 것을 넘어, Streamlit의 강력한 기능을 활용해 대시보드를 훨씬 똑똑하게 만드는 세 가지 방법입니다.

① [레벨 1] "색깔로 말해요" - 조건부 알림판

데이터가 특정 수치를 넘거나 모자랄 때, 대시보드가 우리에게 '신호'를 보내게 할 수 있습니다.

  • 실천 예시: 재고 관리 대시보드에서 재고가 10개 미만이면 숫자를 빨간색으로 표시하고, **"⚠️ 긴급: 재고 보충이 필요합니다!"**라는 메시지를 띄우는 코드를 추가해 보세요.
  • 학습 포인트: st.error()나 st.warning() 같은 알림 함수를 사용하여 데이터의 위기 상황을 직관적으로 파악하는 법을 배웁니다.

 

② [레벨 2] "내가 고르면 변해요" - 인터랙티브 필터

모든 데이터를 한꺼번에 보면 어지럽죠. 사용자가 원하는 정보만 쏙쏙 골라보게 만드는 마법의 버튼들입니다.

  • 실천 예시: 대시보드 옆면에 '슬라이더'를 설치해 보세요. "2024년 1월부터 3월까지만 보여줘"라고 날짜 범위를 조절하면, 중앙의 모든 그래프가 그 기간에 맞춰 실시간으로 다시 그려집니다.
  • 학습 포인트: 사용자의 입력값(슬라이더 값)이 코드 속 변수로 들어가 그래프를 실시간으로 업데이트하는 '반응형 웹'의 원리를 이해하게 됩니다.

 

③ [레벨 3] "파일을 던지면 분석 끝" - 자동 분석 로봇

미리 저장된 데이터가 아니라, 내가 지금 가지고 있는 파일을 대시보드에 직접 올려서 분석하는 기능을 추가할 수 있습니다.

  • 실천 예시: st.file_uploader() 기능을 사용하여, 웹 화면에 엑셀 파일을 마우스로 '드래그 앤 드롭'하면 즉시 그 파일의 내용을 분석해서 매출 순위를 보여주는 기능을 만들어 보세요.
  • 학습 포인트: 웹 사이트가 파일을 읽어 들이고 처리하는 과정을 경험하며, 범용적으로 쓸 수 있는 분석 도구를 만드는 법을 익힙니다.

 

 

💡 초보자를 위한 응용 팁: "복사하고 수정하기"

이 모든 기능을 처음부터 짤 필요는 없습니다. AI에게 이렇게 물어보세요!

"스트림릿 대시보드에 [재고 10개 미만일 때 빨간색 경고창 띄우는 코드] 알려줘." "스트림릿에서 [엑셀 파일을 업로드해서 바로 표로 보여주는 기능] 추가해줘."

 

AI가 준 코드를 내 대시보드 파일에 붙여넣기만 하면, 여러분의 현황판은 점점 더 강력해집니다.

 

 

반응형

 


 

6. 결론: "데이터를 읽는 사람"에서 "인사이트를 주는 사람"으로

단순히 숫자를 나열하는 것과, 그 숫자 속에 숨겨진 흐름을 시각적으로 보여주는 것은 하늘과 땅 차이입니다. 여러분이 만든 이 대시보드는 단순한 프로그램이 아닙니다. 복잡한 현상을 한눈에 파악하게 하고, 팀의 의사결정을 돕는 강력한 비즈니스 무기입니다.

 

처음에는 코드 몇 줄로 시작했지만, 이제 여러분은 엑셀의 칸 속에 갇혀 있던 데이터를 웹 브라우저라는 넓은 세상으로 끄집어냈습니다. 동료들에게 긴 설명 대신 웹 주소 하나를 공유하며 "여기서 실시간으로 확인하세요"라고 말하는 순간, 당신의 전문성은 빛을 발할 것입니다. 기술은 도구일 뿐입니다. 진짜 가치는 그 도구를 통해 확보한 여유 시간으로 더 창의적인 고민을 시작하는 여러분의 변화에 있습니다. AI와 함께라면, 당신은 이미 데이터 전문가로 나아가는 문턱을 넘었습니다.

 

 

반응형