A A
[Data Analysis] μ‹œκ°ν™”μ˜ λ””μžμΈ 원칙 & μŠ€ν† λ¦¬ν…”λ§

μ‹œκ°ν™”μ˜ λ””μžμΈ 원칙

μ‹œκ°ν™”μ˜ λ””μžμΈ 원칙은 5κ°€μ§€κ°€ μžˆμŠ΅λ‹ˆλ‹€. ν•œλ²ˆ 보도둝 ν•˜κ² μŠ΅λ‹ˆλ‹€.

λͺ©μ μ„±

  • μ •μ˜: μ‹œκ°ν™”μ˜ λͺ©μ μ„ λͺ…ν™•νžˆ ν•˜λŠ” 것.
  • μ„€λͺ…: μ‹œκ°ν™”λŠ” νŠΉμ • μ§ˆλ¬Έμ— λ‹΅ν•˜κ±°λ‚˜, νŠΉμ • μΈμ‚¬μ΄νŠΈλ₯Ό λ„μΆœν•˜κ±°λ‚˜, 데이터λ₯Ό 더 μ‰½κ²Œ 이해할 수 μžˆλ„λ‘ λ•λŠ” 역할을 ν•©λ‹ˆλ‹€.
  • μ˜ˆμ‹œ: 맀좜 μ¦κ°€μ˜ 원인을 νŒŒμ•…ν•˜κΈ° μœ„ν•œ κ·Έλž˜ν”„, μ œν’ˆλ³„ νŒλ§€λŸ‰ 비ꡐλ₯Ό μœ„ν•œ 차트.

κ°„κ²°μ„±

  • μ •μ˜: κ°„κ²°ν•˜κ³ , λ³΅μž‘ν•˜μ§€ μ•Šμ•„μ•Ό 함.
  • μ„€λͺ…: λΆˆν•„μš”ν•œ μš”μ†Œλ₯Ό μ œκ±°ν•˜μ—¬ 핡심 정보λ₯Ό κ°„κ²°ν•˜κ²Œ 전달해야 ν•©λ‹ˆλ‹€. μ§€λ‚˜μΉ˜κ²Œ λ³΅μž‘ν•œ κ·Έλž˜ν”„λŠ” 였히렀 ν˜Όλž€μ„ μ΄ˆλž˜ν•  수 μžˆμŠ΅λ‹ˆλ‹€.
  • μ˜ˆμ‹œ: λΆˆν•„μš”ν•œ κ·Έλ¦¬λ“œ 라인, κ³Όλ„ν•œ 색상 μ‚¬μš©, λΆˆν•„μš”ν•œ ν…μŠ€νŠΈ 등을 μ œκ±°ν•œ κ·Έλž˜ν”„.

λͺ…ν™•μ„±

  • μ •μ˜: 데이터λ₯Ό λͺ…ν™•νžˆ 전달해야 함.
  • μ„€λͺ…: μ μ ˆν•œ λ ˆμ΄λΈ”, μΆ•, 제λͺ©μ„ μ‚¬μš©ν•˜μ—¬ 정보λ₯Ό λͺ…ν™•νžˆ 전달해야 ν•©λ‹ˆλ‹€. κ·Έλž˜ν”„λ‚˜ 차트의 각 μš”μ†Œκ°€ λͺ…ν™•ν•˜κ²Œ 이해될 수 μžˆλ„λ‘ ν•΄μ•Ό ν•©λ‹ˆλ‹€.
  • μ˜ˆμ‹œ: μΆ• λ ˆμ΄λΈ”, 데이터 ν¬μΈνŠΈμ— λŒ€ν•œ μ„€λͺ…, 제λͺ© 등을 ν¬ν•¨ν•œ 차트.

μ •λ³΄μ˜ 계측ꡬ쑰

  • μ •μ˜: λ°μ΄ν„°μ˜ μ€‘μš”λ„μ— 따라 μ‹œκ°μ μœΌλ‘œ κ΅¬λΆ„ν•˜μ—¬ 정보λ₯Ό κ³„μΈ΅μ μœΌλ‘œ 전달.
  • μ„€λͺ…: μ€‘μš”ν•œ μ •λ³΄λŠ” 더 κ°•μ‘°ν•˜κ³ , 덜 μ€‘μš”ν•œ μ •λ³΄λŠ” 덜 κ°•μ‘°ν•˜μ—¬ 정보λ₯Ό κ³„μΈ΅μ μœΌλ‘œ 전달해야 ν•©λ‹ˆλ‹€.
  • μ˜ˆμ‹œ: μ£Όμš” 데이터 포인트λ₯Ό 더 큰 ν¬κΈ°λ‚˜ 밝은 μƒ‰μƒμœΌλ‘œ ν‘œμ‹œν•˜κ³ , 뢀차적인 데이터λ₯Ό μž‘μ€ ν¬κΈ°λ‚˜ μ—°ν•œ μƒ‰μƒμœΌλ‘œ ν‘œμ‹œ.

일관성 (Consistency)

  • μ •μ˜: μ‹œκ°ν™” μŠ€νƒ€μΌ, 색상, λ ˆμ΄λΈ” 등을 μΌκ΄€λ˜κ²Œ μœ μ§€ν•˜μ—¬ μ‰½κ²Œ μΈμ‹ν•˜κ³  이해할 수 μžˆλ„λ‘ ν•΄μ•Ό 함.
  • μ„€λͺ…: μΌκ΄€λœ μŠ€νƒ€μΌμ€ μ‚¬μš©μžκ°€ 데이터λ₯Ό 더 μ‰½κ²Œ μ΄ν•΄ν•˜κ³  인식할 수 μžˆλ„λ‘ λ•μŠ΅λ‹ˆλ‹€.
  • μ˜ˆμ‹œ: λ™μΌν•œ 데이터 μ„ΈνŠΈμ— λŒ€ν•΄ 같은 색상과 μŠ€νƒ€μΌμ„ μ‚¬μš©ν•˜μ—¬ μ—¬λŸ¬ 차트λ₯Ό μž‘μ„±.

μ ‘κ·Όμ„± (Accessibility)

  • μ •μ˜: λͺ¨λ“  μ‚¬μš©μžκ°€ μ‰½κ²Œ 이해할 수 μžˆμ–΄μ•Ό 함.
  • μ„€λͺ…: 색맹 μ‚¬μš©μžλ‚˜ μ‹œκ°μž₯애인을 κ³ λ €ν•˜μ—¬ 색상과 λ ˆμ΄λΈ”μ„ 선택해야 ν•©λ‹ˆλ‹€. μ ‘κ·Όμ„± 높은 μ‹œκ°ν™”λŠ” 더 λ§Žμ€ μ‚¬μš©μžμ—κ²Œ μœ μ΅ν•©λ‹ˆλ‹€.
  • μ˜ˆμ‹œ: μƒ‰μƒλΏλ§Œ μ•„λ‹ˆλΌ νŒ¨ν„΄μ΄λ‚˜ 기호λ₯Ό μ‚¬μš©ν•˜μ—¬ 데이터λ₯Ό ꡬ뢄, μΆ©λΆ„ν•œ λŒ€λΉ„λ₯Ό κ°€μ§„ 색상 선택.

μ‹œκ°ν™” μš”μ†Œλ₯Ό ν†΅ν•œ 섀득λ ₯ μžˆλŠ” 이야기 ꡬ성

효과적인 데이터 μ‹œκ°ν™”λŠ” λ‹¨μˆœνžˆ 정보λ₯Ό μ „λ‹¬ν•˜λŠ” κ²ƒλΏλ§Œ μ•„λ‹ˆλΌ,
μ²­μ€‘μ˜ 관심을 끌고 μ€‘μš”ν•œ λ©”μ‹œμ§€λ₯Ό κ°•μ‘°ν•˜λ©° 섀득λ ₯ μžˆλŠ” 이야기λ₯Ό κ΅¬μ„±ν•˜λŠ” 데 μ€‘μš”ν•œ 역할을 ν•©λ‹ˆλ‹€.

 

λ‹€μŒμ€ 이λ₯Ό λ‹¬μ„±ν•˜κΈ° μœ„ν•œ μ£Όμš” μ‹œκ°μ  μš”μ†Œμ™€ λ°©λ²•λ“€μž…λ‹ˆλ‹€.

 

μ‹œκ°μ  κ°•μ‘°

λͺ©μ : μ€‘μš”ν•œ 데이터λ₯Ό κ°•μ‘°ν•˜μ—¬ μ²­μ€‘μ˜ 주의λ₯Ό 끌고 핡심 λ©”μ‹œμ§€λ₯Ό μ „λ‹¬ν•©λ‹ˆλ‹€.

  • 색상 μ‚¬μš©: νŠΉμ • 데이터 포인트λ₯Ό κ°•μ‘°ν•˜κΈ° μœ„ν•΄ λ‹€λ₯Έ 색상 μ‚¬μš©.
  • 크기 λ³€ν™”: μ€‘μš”ν•œ 데이터λ₯Ό 더 큰 크기둜 ν‘œμ‹œ.
  • ν…μŠ€νŠΈ μΆ”κ°€: μ€‘μš”ν•œ 데이터 ν¬μΈνŠΈμ— ν…μŠ€νŠΈλ₯Ό μΆ”κ°€ν•˜μ—¬ μ„€λͺ….

μ‹œκ°μ  κ°•μ‘° Example

import matplotlib.pyplot as plt

# 데이터 μ •μ˜
categories = ['A', 'B', 'C', 'D']
values = [10, 15, 20, 25]

# κ°•μ‘°ν•  데이터
highlight = [False, False, True, False]

# κ·Έλž˜ν”„ 생성
plt.figure(figsize=(10, 6))
bars = plt.bar(categories, values, color=['grey' if not h else 'orange' for h in highlight])
plt.title('Category Values with Emphasis')
plt.xlabel('Category')
plt.ylabel('Value')

# κ°•μ‘°ν•  데이터 ν¬μΈνŠΈμ— ν…μŠ€νŠΈ μΆ”κ°€
for bar in bars:
    if bar.get_height() == max(values):
        plt.text(bar.get_x() + bar.get_width() / 2, bar.get_height() - 5, 'Highest Value', ha='center', color='white', weight='bold')

plt.show()

import matplotlib.pyplot as plt

# 데이터 μ •μ˜
categories = ['A', 'B', 'C', 'D']
values = [10, 15, 20, 25]

# κ·Έλž˜ν”„ 생성
plt.figure(figsize=(10, 6))
plt.bar(categories, values, color='grey')
plt.title('Category Values')
plt.xlabel('Category')
plt.ylabel('Value')
plt.show()

 

μ• λ‹ˆλ©”μ΄μ…˜κ³Ό μ „ν™˜ 효과

λͺ©μ : μ• λ‹ˆλ©”μ΄μ…˜μ„ μ‚¬μš©ν•˜μ—¬ 데이터 변화와 흐름을 더 λͺ…ν™•ν•˜κ²Œ 전달 ν•©λ‹ˆλ‹€.

  • μ• λ‹ˆλ©”μ΄μ…˜: μ‹œκ°„μ— λ”°λ₯Έ 데이터 λ³€ν™”λ₯Ό μ‹œκ°μ μœΌλ‘œ λ³΄μ—¬μ€Œ.
  • μ „ν™˜ 효과: 데이터 포인트 κ°„μ˜ μ „ν™˜μ„ λΆ€λ“œλŸ½κ²Œ ν•˜μ—¬ λ³€ν™” 과정을 λͺ…ν™•νžˆ 전달.

μ• λ‹ˆλ©”μ΄μ…˜ μ „ν™˜ 효과 Example

%matplotlib inline
import matplotlib.pyplot as plt
import matplotlib.animation as animation
import numpy as np

# 데이터 μ •μ˜
fig, ax = plt.subplots()
x = np.arange(0, 10, 0.1)
line, = ax.plot(x, np.sin(x))

# μ• λ‹ˆλ©”μ΄μ…˜ ν•¨μˆ˜
def update(num, x, line):
    line.set_ydata(np.sin(x + num / 10.0))
    return line,

ani = animation.FuncAnimation(fig, update, frames=100, fargs=[x, line], interval=50)
plt.title('Sine Wave Animation')
plt.xlabel('X')
plt.ylabel('Y')
plt.show()

from matplotlib import rc
rc('animation', html='jshtml')
ani

μ‹€μ œλ‘œ μ• λ‹ˆλ§€μ΄μ…˜ 처럼 λ™μž‘ν•˜λŠ”κ±Έ 보렀면 μ½”λ“œλ₯Ό 직접 μ‹€ν–‰μ‹œν‚€λŠ”κ±Έ ꢌμž₯λ“œλ¦½λ‹ˆλ‹€.

import matplotlib.pyplot as plt
import numpy as np

# 데이터 μ •μ˜
x = np.arange(0, 10, 0.1)
y = np.sin(x)

# κ·Έλž˜ν”„ 생성
plt.figure(figsize=(10, 6))
plt.plot(x, y)
plt.title('Sine Wave')
plt.xlabel('X')
plt.ylabel('Y')
plt.show()

 

λΉ„μ£Όμ–Ό νžˆμŠ€ν† λ¦¬

λͺ©μ : μ‹œκ°μ  μš”μ†Œλ₯Ό 톡해 λ°μ΄ν„°μ˜ 역사적 λ³€ν™”λ₯Ό λ³΄μ—¬μ€λ‹ˆλ‹€.

  • νƒ€μž„λΌμΈ: μ‹œκ°„μ— λ”°λ₯Έ μ£Όμš” μ‚¬κ±΄μ΄λ‚˜ 데이터 λ³€ν™”λ₯Ό μ‹œκ°ν™”.
  • κ³Όκ±° 데이터와 비ꡐ: ν˜„μž¬ 데이터λ₯Ό κ³Όκ±° 데이터와 λΉ„κ΅ν•˜μ—¬ λ³€ν™” μΆ”μ„Έλ₯Ό λ³΄μ—¬μ€Œ.

λΉ„μ£Όμ–Ό νžˆμŠ€ν† λ¦¬ Example

import matplotlib.pyplot as plt

# 데이터 μ •μ˜
years = ['2018', '2019', '2020', '2021']
sales = [15000, 18000, 22000, 25000]

# κ·Έλž˜ν”„ 생성
plt.figure(figsize=(10, 6))
plt.plot(years, sales, marker='o', linestyle='-', color='b')
plt.title('Annual Sales Over Time')
plt.xlabel('Year')
plt.ylabel('Sales')
for i, txt in enumerate(sales):
    plt.annotate(txt, (years[i], sales[i]), textcoords="offset points", xytext=(0,10), ha='center')
plt.show()

import matplotlib.pyplot as plt

# 데이터 μ •μ˜
years = ['2018', '2019', '2020', '2021']
sales = [15000, 18000, 22000, 25000]

# κ·Έλž˜ν”„ 생성
plt.figure(figsize=(10, 6))
plt.plot(years, sales)
plt.title('Annual Sales')
plt.xlabel('Year')
plt.ylabel('Sales')
plt.show()


μ‹œκ°ν™”μ™€ μŠ€ν† λ¦¬ν…”λ§

μ‹œκ°ν™” μš”μ†Œλ₯Ό ν†΅ν•œ 섀득λ ₯ μžˆλŠ” 이야기 ꡬ성

1. λ‹€μ–‘ν•œ μ‹œκ°μ  μš”μ†Œμ˜ 효과적인 μ‚¬μš©

μ‹œκ°μ  μš”μ†Œλ₯Ό 효과적으둜 μ‚¬μš©ν•˜λ©΄ 데이터λ₯Ό λͺ…ν™•ν•˜κ²Œ μ „λ‹¬ν•˜κ³  μ²­μ€‘μ˜ 관심을 끌며 μ€‘μš”ν•œ λ©”μ‹œμ§€λ₯Ό κ°•μ‘°ν•˜λŠ” 데 도움이 λ©λ‹ˆλ‹€.

2. μ‹œκ°μ  κ°•μ‘°

  • 색상 μ‚¬μš©: νŠΉμ • 데이터 포인트λ₯Ό κ°•μ‘°ν•˜μ—¬ μ²­μ€‘μ˜ 주의λ₯Ό 끌 수 μžˆμŠ΅λ‹ˆλ‹€.
  • 크기 λ³€ν™”: μ€‘μš”ν•œ λ°μ΄ν„°λŠ” 더 크게 ν‘œμ‹œν•˜μ—¬ κ°•μ‘°ν•©λ‹ˆλ‹€.
  • ν…μŠ€νŠΈ μΆ”κ°€: μ€‘μš”ν•œ 데이터 ν¬μΈνŠΈμ— μ„€λͺ…을 μΆ”κ°€ν•˜μ—¬ 이해λ₯Ό λ•μŠ΅λ‹ˆλ‹€.

3. μ• λ‹ˆλ©”μ΄μ…˜κ³Ό μ „ν™˜ 효과

  • μ• λ‹ˆλ©”μ΄μ…˜: λ°μ΄ν„°μ˜ 변화와 흐름을 μ‹œκ°μ μœΌλ‘œ 더 λͺ…ν™•ν•˜κ²Œ μ „λ‹¬ν•©λ‹ˆλ‹€.
  • μ „ν™˜νš¨κ³Ό: 데이터 포인트 κ°„μ˜ λΆ€λ“œλŸ¬μš΄ μ „ν™˜μ„ 톡해 λ³€ν™” 과정을 κ°•μ‘°ν•©λ‹ˆλ‹€.

4. λΉ„μ£Όμ–Ό νžˆμŠ€ν† λ¦¬

  • νƒ€μž„λΌμΈ: μ‹œκ°„μ— λ”°λ₯Έ 데이터 λ³€ν™”λ₯Ό μ‹œκ°μ μœΌλ‘œ ν‘œν˜„ν•©λ‹ˆλ‹€.
  • κ³Όκ±° 데이터와 비ꡐ: ν˜„μž¬ 데이터λ₯Ό κ³Όκ±° 데이터와 λΉ„κ΅ν•˜μ—¬ λ³€ν™” μΆ”μ„Έλ₯Ό λ³΄μ—¬μ€λ‹ˆλ‹€.

 

이야기λ₯Ό ν†΅ν•œ 데이터 전달

λ°μ΄ν„°μ˜ 흐름을 μŠ€ν† λ¦¬μ˜ ν˜•νƒœλ‘œ κ΅¬μ„±ν•˜λ©΄ λ³΅μž‘ν•œ 데이터λ₯Ό μ‰½κ²Œ 이해할 수 있으며,
μŠ€ν† λ¦¬ ν˜•μ‹μ€ 데이터λ₯Ό 더 였래 기얡에 λ‚¨κ²Œ ν•©λ‹ˆλ‹€.

  • λ„μž…: λ°μ΄ν„°μ˜ λ°°κ²½κ³Ό λͺ©μ μ„ μ†Œκ°œν•©λ‹ˆλ‹€.
  • μ „κ°œ: 데이터λ₯Ό λ‹¨κ³„λ³„λ‘œ μ„€λͺ…ν•˜λ©° μ£Όμš” μΈμ‚¬μ΄νŠΈλ₯Ό λ„μΆœν•©λ‹ˆλ‹€.
  • 클라이λ§₯슀: λ°μ΄ν„°μ—μ„œ κ°€μž₯ μ€‘μš”ν•œ 뢀뢄을 κ°•μ‘°ν•˜μ—¬ μ „λ‹¬ν•©λ‹ˆλ‹€.
  • 결말: λ°μ΄ν„°μ˜ μš”μ•½κ³Ό 결둠을 μ œμ‹œν•˜κ³ , ν•„μš”ν•œ 경우 행동을 μš”κ΅¬ν•©λ‹ˆλ‹€.

 

청쀑을 κ³ λ €ν•œ μ‹œκ°ν™” 섀계

μ‹œκ°ν™”λ₯Ό λ§Œλ“€κΈ° 전에 청쀑이 λˆ„κ΅¬μΈμ§€, κ·Έλ“€μ˜ λ°°κ²½κ³Ό 지식 μˆ˜μ€€μ„ νŒŒμ•…ν•˜λŠ” 것이 μ€‘μš”ν•©λ‹ˆλ‹€.
  • 데λͺ¨κ·Έλž˜ν”½: μ²­μ€‘μ˜ λ‚˜μ΄, 성별, 직업, ꡐ윑 μˆ˜μ€€ λ“±.
  • 지식 μˆ˜μ€€: μ²­μ€‘μ˜ 데이터 뢄석 및 μ‹œκ°ν™”μ— λŒ€ν•œ 이해 μˆ˜μ€€.
  • 관심사: 청쀑이 μ–΄λ–€ 정보에 관심이 μžˆλŠ”μ§€, μ–΄λ–€ 결둠을 λ„μΆœν•˜κ³ μž ν•˜λŠ”μ§€.

 

λ§žμΆ€ν˜• μ‹œκ°ν™”

λ‹€μ–‘ν•œ 상황과 데이터λ₯Ό λ³΄λŠ” μ‚¬λžŒμ— 따라 λ§žμΆ€ν˜• μ‹œκ°ν™”λ₯Ό ν•΄μ•Ό ν•˜λŠ” κ²½μš°λ„ μžˆμŠ΅λ‹ˆλ‹€.

 

  • κ°„λ‹¨ν•œ μ‹œκ°ν™”: 비전문가도 μ‰½κ²Œ 이해할 수 μžˆλ„λ‘ κ°„λ‹¨ν•œ μ°¨νŠΈλ‚˜ κ·Έλž˜ν”„λ‘œ ν‘œν˜„.
  • μƒμ„Έν•œ μ‹œκ°ν™”: μ „λ¬Έκ°€λ‚˜ 데이터 뢄석가λ₯Ό μœ„ν•΄ λ³΅μž‘ν•œ 데이터 관계와 뢄석 κ²°κ³Όλ₯Ό μƒμ„Ένžˆ μ‹œκ°ν™”.
  • μœ ν˜•λ³„ λ§žμΆ€ν™”: 청쀑이 μ„ ν˜Έν•˜λŠ” μ‹œκ°ν™” μœ ν˜• μ‚¬μš©.

 

쒋은 μ‹œκ°ν™”μ˜ 원칙

κ³Όμ—° 쒋은 μ‹œκ°ν™”μ˜ 원칙은 λ¬΄μ—‡μΌκΉŒμš”? ν•œλ²ˆ μ•Œμ•„λ³΄κ² μŠ΅λ‹ˆλ‹€.

 

  • λͺ…ν™•μ„± (Clarity): 데이터λ₯Ό λͺ…ν™•ν•˜κ³  μΌκ΄€λ˜κ²Œ 전달. μ μ ˆν•œ λ ˆμ΄λΈ”, μΆ•, 제λͺ© μ‚¬μš© 등이 μžˆμŠ΅λ‹ˆλ‹€.
  • κ°„κ²°μ„± (Simplicity): λΆˆν•„μš”ν•œ μš”μ†Œ μ œκ±°ν•˜μ—¬ 핡심 정보λ₯Ό κ°•μ‘°. κ·Έλž˜ν”„μ— λΆˆν•„μš”ν•œ 3D νš¨κ³Όλ‚˜ μž₯식 제거 등이 μžˆμŠ΅λ‹ˆλ‹€.
  • μ •ν™•μ„± (Accuracy): λ°μ΄ν„°μ˜ μ •ν™•ν•œ 값을 ν‘œμ‹œν•˜κ³  μ™œκ³‘ 없이 데이터 전달. μ μ ˆν•œ μΆ• λ²”μœ„λ₯Ό μ„€μ •ν•˜μ—¬ λ°μ΄ν„°μ˜ μ‹€μ œ λ³€ν™”λ₯Ό μ •ν™•νžˆ 반영 ν•΄μ•Ό ν•©λ‹ˆλ‹€.
  • μ ν•©ν•œ 차트 μœ ν˜• 선택: λ°μ΄ν„°μ˜ νŠΉμ„±κ³Ό μ „λ‹¬ν•˜λ €λŠ” λ©”μ‹œμ§€μ— μ ν•©ν•œ 차트 μœ ν˜•μ„ μ„ νƒν•©λ‹ˆλ‹€.

 

λ‚˜μœ μ‹œκ°ν™”

그러면 쒋은 μ‹œκ°ν™”λ„ μžˆλ‹€λ©΄, λ‚˜μœ μ‹œκ°ν™”λ„ 있겠죠. μ–΄λ– ν•œ 것이 μžˆλŠ”μ§€ ν•œλ²ˆ μ•Œμ•„λ³΄κ² μŠ΅λ‹ˆλ‹€.
  • ν˜Όλž€μŠ€λŸ¬μ›€ (Confusion): 데이터가 λͺ…ν™•ν•˜μ§€ μ•Šκ³  λΆˆν•„μš”ν•œ μš”μ†Œλ‘œ 인해 ν˜Όλž€μ„ μ΄ˆλž˜ν•©λ‹ˆλ‹€.
import matplotlib.pyplot as plt

# 데이터 μ •μ˜
months = ['Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun']
sales = [150, 180, 175, 200, 190, 210]

# κ·Έλž˜ν”„ 생성 (λ‚˜μœ μ˜ˆμ‹œ)
fig = plt.figure(figsize=(10, 6))
ax = fig.add_subplot(111, projection='3d')
ax.bar(months, sales, zs=0, zdir='y', alpha=0.8)
ax.set_title('Monthly Sales (Confusing 3D Effect)')
ax.set_xlabel('Month')
ax.set_ylabel('Sales')
plt.show()

  • λΆˆν•„μš”ν•œ λ³΅μž‘μ„± (Unnecessary Complexity): μ§€λ‚˜μΉ˜κ²Œ λ³΅μž‘ν•œ κ·Έλž˜ν”„λŠ” 데이터λ₯Ό μ΄ν•΄ν•˜κΈ° μ–΄λ ΅κ²Œ λ§Œλ“ κ²ƒμž…λ‹ˆλ‹€.
import matplotlib.pyplot as plt

# 데이터 μ •μ˜
months = ['Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun']
sales = [150, 180, 175, 200, 190, 210]
customers = [3000, 3500, 3400, 3700, 3600, 3900]

# κ·Έλž˜ν”„ 생성 (λ‚˜μœ μ˜ˆμ‹œ)
plt.figure(figsize=(10, 6))
plt.plot(months, sales, marker='o', label='Sales', color='blue')
plt.plot(months, customers, marker='x', label='Customers', color='green')
plt.title('Monthly Sales and Customers (Too Complex)')
plt.xlabel('Month')
plt.ylabel('Value')
plt.legend()
plt.show()

  • μ™œκ³‘λœ 데이터 (Distorted Data): 데이터 좕을 잘λͺ» μ„€μ •ν•˜μ—¬ νŠΉμ • 데이터λ₯Ό κ³Όμž₯ν•˜κ±°λ‚˜ μΆ•μ˜ λ²”μœ„λ₯Ό μ‘°μ •ν•˜μ—¬ λ°μ΄ν„°μ˜ λ³€ν™”λ₯Ό κ³Όμž₯ν•˜μ—¬ μ™œκ³‘λœ λ©”μ‹œμ§€λ₯Ό 전달할 μˆ˜μžˆμŠ΅λ‹ˆλ‹€.
import matplotlib.pyplot as plt

# 데이터 μ •μ˜
months = ['Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun']
returns = [5, 4.5, 4, 3.8, 4.2, 3.5]

# κ·Έλž˜ν”„ 생성 (λ‚˜μœ μ˜ˆμ‹œ)
plt.figure(figsize=(10, 6))
plt.bar(months, returns, color='red')
plt.title('Monthly Returns Rate (Distorted)')
plt.xlabel('Month')
plt.ylabel('Returns (%)')
plt.ylim(3.5, 5)
plt.show()

  • 잘λͺ»λœ 차트 μœ ν˜• (Inappropriate Chart Type): λ°μ΄ν„°μ˜ νŠΉμ„±μ— λ§žμ§€ μ•ŠλŠ” 차트 μœ ν˜•μ„ μ„ νƒν•œκ²ƒ μž…λ‹ˆλ‹€. 그러면 데이터λ₯Ό μ˜€ν•΄ν•˜κ²Œ ν•  수 μžˆμŠ΅λ‹ˆλ‹€.
import matplotlib.pyplot as plt

# 데이터 μ •μ˜
months = ['Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun']
sales = [150, 180, 175, 200, 190, 210]

# κ·Έλž˜ν”„ 생성 (λ‚˜μœ μ˜ˆμ‹œ)
plt.figure(figsize=(10, 6))
plt.pie(sales, labels=months, autopct='%1.1f%%')
plt.title('Monthly Sales (Inappropriate Chart Type)')
plt.show()