DataScopeλ Streamlit κΈ°λ°μ μΉ μ ν리μΌμ΄μ μΌλ‘, μ¬μ©μκ° λ°μ΄ν° νμΌμ μ λ‘λνμ¬ λ€μν μκ°ν μ°¨νΈλ₯Ό μΈν°λν°λΈνκ² νμΈν μ μλ κ³ κΈ λ°μ΄ν° λΆμ λꡬμ λλ€.
- mcp-shrimp-task-managerλ₯Ό μ΄μ©ν΄ 100% VibeCodingμΌλ‘ μμ±λμμ΅λλ€.
- λ€μν μ°¨νΈ νμ : Scatter Plot, Box Plot, Histogram, Bar Chart, Correlation Heatmap, Parallel Coordinates, Line Chart, Sub Plots
- μλ μ°¨νΈ μ ν: λ°μ΄ν° νΉμ±μ λ°λ₯Έ μ΅μ μ°¨νΈ νμ μλ μ ν
- μΈν°λν°λΈ μ°¨νΈ: Plotly κΈ°λ° νλ/μΆμ, νΈλ² μ 보, λ²λ‘ μ‘°μ
- ν΅κ³ λΆμ: κΈ°λ³Έ ν΅κ³, μκ΄κ΄κ³ λΆμ, μ΄μμΉ νμ§, λΆν¬ λΆμ
- λ€λ³λ λΆμ: PCA, ν΄λ¬μ€ν°λ§, μ°¨μ μΆμ
- μκ³μ΄ λΆμ: νΈλ λ λΆμ, κ³μ μ± νμ§, μ΄λνκ·
- λ°μ΄ν° μΈμ¬μ΄νΈ: μλ μΈμ¬μ΄νΈ μμ± λ° κΆμ₯μ¬ν
- μΊμ± μμ€ν : λ°λ³΅ μμ μ±λ₯ ν₯μ (70-80% μλ κ°μ )
- λ©λͺ¨λ¦¬ μ΅μ ν: DataFrame μλ μ΅μ ν (30-50% λ©λͺ¨λ¦¬ μ μ½)
- λμ©λ νμΌ μ§μ: μ΅λ 100MB νμΌ μ²λ¦¬
- μ§νλ₯ νμ: μ€μκ° μμ μ§ν μν© λͺ¨λν°λ§
- λ°μν λμμΈ: λͺ¨λ°μΌ/λ°μ€ν¬ν± μ΅μ ν
- μ¬μ©μ μ€μ : ν λ§, μ°¨νΈ λμ΄, μλ μλ‘κ³ μΉ¨ μ€μ
- μ§κ΄μ μΈν°νμ΄μ€: μ½λ© μ§μ μμ΄λ μ½κ² μ¬μ©
- μ±λ₯ λͺ¨λν°λ§: λ‘λ© μκ°, λΆμ μκ° μΆμ
# μ μ₯μ ν΄λ‘
git clone https://github.com/innerpyg/DataScope.git
cd DataScope
# κ°μνκ²½ μμ± (κΆμ₯)
python -m venv venv
source venv/bin/activate # Linux/Mac
# μμ‘΄μ± μ€μΉ
pip install -r requirements.txt
# Streamlit μ ν리μΌμ΄μ
μ€ν
streamlit run app.py
# λλ νΉμ ν¬νΈλ‘ μ€ν
streamlit run app.py --server.port 8501
# ν€λλ¦¬μ€ λͺ¨λλ‘ μ€ν (μλ² λ°°ν¬μ©)
streamlit run app.py --server.headless true --server.port 8501
- νμΌ μ
λ‘λ: μΉ λΈλΌμ°μ μμ
http://localhost:8501
μ μ ν λ°μ΄ν° νμΌ μ λ‘λ - λ°μ΄ν° νμΈ: 'λ°μ΄ν° 미리보기' νμμ μ λ‘λλ λ°μ΄ν° νμΈ
- μκ°ν: 'μκ°ν' νμμ λ€μν μ°¨νΈ μμ± λ° νμ
- λΆμ: 'ν΅κ³ λΆμ' νμμ κ³ κΈ λΆμ μν
νμ | νμ₯μ | μ€λͺ |
---|---|---|
CSV | .csv |
μΌνλ‘ κ΅¬λΆλ κ° νμΌ |
TXT | .txt |
νμΌλ‘ ꡬλΆλ κ° νμΌ |
Excel | .xlsx , .xls |
Microsoft Excel νμΌ |
μ°¨νΈ νμ | μ€λͺ | μ΅μ λ°μ΄ν° |
---|---|---|
Scatter Plot | λ λ³μ κ°μ κ΄κ³ | μμΉν λ°μ΄ν° 2κ° |
Box Plot | λ°μ΄ν° λΆν¬ λ° μ΄μμΉ | μμΉν + λ²μ£Όν |
Histogram | λ¨μΌ λ³μμ λΆν¬ | μμΉν λ°μ΄ν° 1κ° |
Bar Chart | λ²μ£Όν λ°μ΄ν° λΉλ | λ²μ£Όν λ°μ΄ν° |
Correlation Heatmap | λ³μ κ° μκ΄κ΄κ³ | μμΉν λ°μ΄ν° λ€μ |
Parallel Coordinates | λ€μ°¨μ λ°μ΄ν° μκ°ν | μμΉν λ°μ΄ν° λ€μ |
Line Chart | μκ³μ΄ λ°μ΄ν° | μκ° + μμΉν |
Sub Plots | λ³΅ν© μ°¨νΈ | λ€μν λ°μ΄ν° νμ |
streamlit>=1.28.0 # μΉ μ ν리μΌμ΄μ
νλ μμν¬
pandas>=2.0.0 # λ°μ΄ν° μ²λ¦¬ λ° λΆμ
numpy>=1.24.0 # μμΉ κ³μ°
plotly>=5.15.0 # μΈν°λν°λΈ μκ°ν
scipy>=1.10.0 # κ³Όν κ³μ°
seaborn>=0.12.0 # ν΅κ³ μκ°ν
openpyxl>=3.1.0 # Excel νμΌ μ²λ¦¬
xlrd>=2.0.0 # Excel νμΌ μ½κΈ°
scikit-learn>=1.3.0 # λ¨Έμ λ¬λ μκ³ λ¦¬μ¦
psutil>=5.9.0 # μμ€ν
λͺ¨λν°λ§
DataScope/
βββ app.py # λ©μΈ Streamlit μ ν리μΌμ΄μ
βββ requirements.txt # Python μμ‘΄μ±
βββ README.md # νλ‘μ νΈ λ¬Έμ
βββ .gitignore # Git 무μ νμΌ
βββ utils/ # μ νΈλ¦¬ν° λͺ¨λ
β βββ __init__.py # λͺ¨λ μ΄κΈ°ν
β βββ data_processor.py # λ°μ΄ν° μ²λ¦¬ λ° κ²μ¦
β βββ visualizer.py # λ°μ΄ν° μκ°ν
β βββ analyzer.py # κ³ κΈ λΆμ κΈ°λ₯
βββ data/ # μν λ°μ΄ν°
β βββ sample_data.csv # κΈ°λ³Έ μν λ°μ΄ν°
β βββ complex_sample_data.csv # λ³΅ν© μν λ°μ΄ν°
βββ docs/ # λ¬Έμ
β βββ user_manual.md # μ¬μ©μ λ§€λ΄μΌ
β βββ developer_guide.md # κ°λ°μ κ°μ΄λ
β βββ deployment_guide.md # λ°°ν¬ κ°μ΄λ
βββ tests/ # ν
μ€νΈ νμΌ
βββ test_data_processor.py
βββ test_visualizer.py
βββ test_analyzer.py
# κ°λ° νκ²½
export STREAMLIT_SERVER_PORT=8501
export STREAMLIT_SERVER_HEADLESS=true
export STREAMLIT_SERVER_MAX_UPLOAD_SIZE=100
# νλ‘λμ
νκ²½
export STREAMLIT_SERVER_PORT=8501
export STREAMLIT_SERVER_HEADLESS=true
export STREAMLIT_SERVER_MAX_UPLOAD_SIZE=100
export STREAMLIT_SERVER_ENABLE_CORS=false
export STREAMLIT_SERVER_ENABLE_XSRF_PROTECTION=true
- μμ "λΉ λ₯Έ μμ" μΉμ μ°Έμ‘°
streamlit run app.py
λͺ λ ΉμΌλ‘ μ€ν
# μμ€ν
μλΉμ€λ‘ λ±λ‘
sudo cp datascope.service /etc/systemd/system/ # μμ νμ
sudo systemctl enable datascope
sudo systemctl start datascope
# ν΄κ²°λ°©λ²: pipλ‘ streamlit μ¬μ€μΉ
pip install streamlit
# λλ
python -m pip install streamlit
# ν΄κ²°λ°©λ²: λ©λͺ¨λ¦¬ μ΅μ ν μ€ν
# μ ν리μΌμ΄μ
μμ 'κ³ κΈ κΈ°λ₯' β 'μ±λ₯ μ΅μ ν' ν μ¬μ©
# ν΄κ²°λ°©λ²: λΈλΌμ°μ μΊμ ν΄λ¦¬μ΄
# λλ λ€λ₯Έ λΈλΌμ°μ λ‘ ν
μ€νΈ
# Streamlit λ‘κ·Έ νμΈ
streamlit run app.py --logger.level=debug
# μμ€ν
λ‘κ·Έ νμΈ (Linux)
journalctl -u datascope -f
μ΄ νλ‘μ νΈλ MIT λΌμ΄μ μ€ νμ λ°°ν¬λ©λλ€. μμΈν λ΄μ©μ LICENSE
νμΌμ μ°Έμ‘°νμΈμ.
- Streamlit - μΉ μ ν리μΌμ΄μ νλ μμν¬
- Plotly - μΈν°λν°λΈ μκ°ν
- Pandas - λ°μ΄ν° λΆμ
- Scikit-learn - λ¨Έμ λ¬λ
- mcp-shrimp-task-manager - MCP shrimp task manager
DataScope
- λ°μ΄ν° λΆμμ λμ± μ§κ΄μ μ΄κ³ κ°λ ₯νκ² λ§λ€μ΄μ£Όλ λꡬμ λλ€! π
- 100% VibeCodingμΌλ‘ μμ±λμμ΅λλ€.
- λ³Έ repositoryμ LICENSE λ± κΈ°ν λ¬Έμ κ° μλ κ²½μ° μΈμ λ issue μμ± λΆνλ립λλ€.