jeongkee/text-to-svg-workflow-tutorial
π Text to SVG μν¬νλ‘μ° λ§μ€ν°
ν μ€νΈ λ¬Έμλ₯Ό λ§₯ν¨μ§/λλ‘μ΄νΈ μμ€μ μ λ¬Έμ μΈ λΉμ¦λμ€ μκ°νλ‘ μλ λ³ννλ μμ ν μν¬νλ‘μ°λ₯Ό νμ΅ν μ μλ μΈν°λν°λΈ κ΅μ‘ νλ«νΌμ λλ€.
π― μ£Όμ κΈ°λ₯
π 6λ¨κ³ μμ μν¬νλ‘μ°
- λ¬Έμ μ λ ₯: ν μ€νΈ λ¬Έμ μ λ‘λ λ° μ μ²λ¦¬
- ν ν½ λΆμ: ν€μλ μΆμΆ λ° μλ νμ
- λ¬Έμ λΆλ₯: Aκ³μ΄/Bκ³μ΄ 25κ°μ§ νμ μλ λ§€ν
- SVG κ°μ΄λλΌμΈ: λ μ΄μμ λ° μ€νμΌ κ·μΉ μ μ©
- ν둬ννΈ μμ±: LLM μ΅μ ν ν둬ννΈ μμ§λμ΄λ§
- SVG μΆλ ₯: μ΅μ’ μκ°ν μμ± λ° κ²μ¦
π¨ μ λ¬Έμ μΈ λμμΈ μμ€ν
- κΈλ‘λ² λ μ΄μμ: 1600Γ900 μΊλ²μ€, 12-μ»¬λΌ κ·Έλ¦¬λ
- νμ΄ν¬κ·ΈλνΌ: H1(48px)~Caption(12px) 6λ¨κ³ μ€μΌμΌ
- μ»¬λ¬ μμ€ν : μλ―Έμ 4ν€ + μ€λ¦½ νλ νΈ μ ν
- μ κ·Όμ±: WCAG 4.5:1 λͺ λ λλΉ, μ λ λ¦½μ± μ§μ
π 25κ°μ§ λ¬Έμ νμ μ§μ
Aκ³μ΄: λμ보λν (μ€μκ° λͺ¨λν°λ§)
- A1: κ²½μμ§ λ³΄κ³ (KPI, μ¬λ¬΄μ±κ³Ό, μ λ΅μμ½, μ΄μ¬ν)
- A2: μ΄μμ§ κ΄λ¦¬ (μ λ¬΄λ³΄κ³ , νλ‘μ νΈνν©, νμ§μμ , HR)
- A3: ν¬μμ μν΅ (IRμμ½, ν¬μμ±κ³Ό)
- A4: νμ μ§μ (κ²½μνμ, λΆμνμ)
Bκ³μ΄: μμΈλ¬Έμν (λΆμ λ° μ€λ)
- B1: κΈ°νμ (μ¬μ κ³ν, λ§μΌν μ λ΅, μ μ¬μ , μμ°)
- B2: μ μμ (μμ μ μ, νλ‘μ νΈμ μ, μ μ°°, 컨μ€ν )
- B3: νΌμΉ/IR (νΌμΉλ±, IRμμΈ, ν¬μμ μ)
- B4: κ΅μ‘μλ£ (μ§λ¬΄κ΅μ‘, μν¬μ)
- B5: νμ¬μκ° (νμ¬μκ°μ, κΈ°μ μ¬μμ)
π μ¬μ© λ°©λ²
1. μ¦μ 체ν
μ€νμ΄μ€λ₯Ό μ΄λ©΄ λ°λ‘ μΈν°λν°λΈ νν 리μΌμ΄ μμλ©λλ€. 6λ¨κ³λ₯Ό μμλλ‘ μ§ννλ©° μ 체 μν¬νλ‘μ°λ₯Ό 체νν΄λ³΄μΈμ.
2. μ€μ λ¬Έμλ‘ μ€μ΅
μ 곡λ μμ λ¬Έμλ₯Ό μμ νκ±°λ λ³ΈμΈμ λ¬Έμλ₯Ό μ λ ₯νμ¬ μ€μ λΆλ₯ κ³Όμ μ νμΈν μ μμ΅λλ€.
3. κ° λ¨κ³λ³ νμ΅
- ν€λ³΄λ νμ΄νν€λ‘ λ¨κ³ μ΄λ
- κ° λ¨κ³ ν΄λ¦μΌλ‘ μ§μ μ΄λ
- λͺ¨λ°μΌ ν°μΉ μ§μ
π μ€μ΅ μμ : A1-1 κ²½μμ§ KPI λμ보λ
μ λ ₯ λ¬Έμ
2024λ
3λΆκΈ° κ²½μ μ±κ³Ό μμ½
μ£Όμ KPI:
- λ§€μΆμ‘: 12.3μ‘°μ (λͺ©ν: 11.5μ‘°, YoY +8.2%)
- μμ
μ΄μ΅: 1.8μ‘°μ (λͺ©ν: 1.6μ‘°, YoY +12.5%)
- μμ΄μ΅: 1.2μ‘°μ (λͺ©ν: 1.1μ‘°, YoY +9.1%)
μλ³ μ€μ μΆμ΄:
7μ: λ§€μΆ 4.1μ‘°, μμ
μ΄μ΅ 0.6μ‘°
8μ: λ§€μΆ 4.0μ‘°, μμ
μ΄μ΅ 0.5μ‘°
9μ: λ§€μΆ 4.2μ‘°, μμ
μ΄μ΅ 0.7μ‘°
ν΅μ¬ μΈμ¬μ΄νΈ:
- ν리미μ μ ν νλ§€ μ¦κ°λ‘ μμ΅μ± κ°μ
- λμ§νΈ μ±λ λ§€μΆ λΉμ€ 35% λ¬μ±λΆλ₯ κ²°κ³Ό
- λ¬Έμ νμ : A1-1 (κ²½μμ§ KPI λμ보λ)
- λ§€μΉ μ μ: 95%
- κΆμ₯ λ μ΄μμ: μ’μΈ‘ KPI μΉ΄λ 2Γ2, μ°μΈ‘ 콀보차νΈ, νλ¨ μΈμ¬μ΄νΈ
π νμ΅ λͺ©ν
μ΄ νν 리μΌμ μλ£νλ©΄ λ€μμ λ§μ€ν°νκ² λ©λλ€:
β 25κ°μ§ λ¬Έμ νμ μλ λΆλ₯ β λ§₯ν¨μ§/λλ‘μ΄νΈ μμ€ μκ°ν μμ± β 30μ΄ λ΄ μ λ¬Έ λμ보λ μμ± β νμν¬μΈνΈ μλ²½ νΈν β ν둬ννΈ μμ§λμ΄λ§ κΈ°λ² β νμ§ κ²μ¦ μμ€ν ꡬμΆ
π§ κΈ°μ μ€ν
- Frontend: HTML5, CSS3, Vanilla JavaScript
- Design: λ°μν λμμΈ, λ€ν¬λͺ¨λ μ§μ
- Accessibility: WCAG 2.1 AA μ€μ
- Performance: μ΅μ νλ μ λλ©μ΄μ , λͺ¨λ°μΌ μΉνμ
π± μ§μ νκ²½
- λ°μ€ν¬ν±: Chrome, Firefox, Safari, Edge (μ΅μ λ²μ )
- λͺ¨λ°μΌ: iOS Safari, Android Chrome
- νλΈλ¦Ώ: ν°μΉ μΈν°νμ΄μ€ μ΅μ ν
- ν€λ³΄λ λ€λΉκ²μ΄μ : νμ΄νν€ μ§μ
π λ€κ΅μ΄ μ§μ
νμ¬ νκ΅μ΄λ‘ μ 곡λλ©°, ν₯ν μμ΄, μΌλ³Έμ΄, μ€κ΅μ΄ μ§μ μμ μ λλ€.
π μΆκ° 리μμ€
μ΄ μ€νμ΄μ€λ ν¬κ΄μ μΈ Text to SVG μν¬νλ‘μ° κ΅μ‘ μ리μ¦μ μΌλΆμ λλ€:
- π μμΈ κ΅μ‘μλ£: μ 체 μν¬νλ‘μ° κ°μ΄λ (Markdown)
- π νμν¬μΈνΈ μλ£: κ°μμ© μ¬λΌμ΄λ (9κ° μ¬λΌμ΄λ)
- π» Jupyter Notebook: μ½λ μ€μ΅μ (λ¨κ³λ³ ꡬν)
- ποΈ React λμ보λ: κ³ κΈ μΈν°λν°λΈ λ²μ
π€ κΈ°μ¬νκΈ°
μ΄ νλ‘μ νΈμ κΈ°μ¬νκ³ μΆμΌμλ©΄:
- νΌλλ°± μ 곡: κ°μ μ¬νμ΄λ λ²κ·Έ μ κ³
- λ¬Έμ λ²μ: λ€κ΅μ΄ μ§μ νμ₯
- μ λ¬Έμ νμ : μΆκ° λΉμ¦λμ€ λ¬Έμ νμ μ μ
- μ±λ₯ μ΅μ ν: λ‘λ© μλ λ° μ¬μ©μ± κ°μ
π λΌμ΄μ μ€
Apache License 2.0 - μμ λ‘κ² μ¬μ©, μμ , λ°°ν¬ κ°λ₯ν©λλ€.
π μ°κ΄ νλ‘μ νΈ
Made with β€οΈ for the business visualization community
π€ μ΄ μ€νμ΄μ€κ° λμμ΄ λμ ¨λ€λ©΄ βοΈλ₯Ό λλ¬μ£ΌμΈμ!
