Scatter Plot
A scatter plot places one point per pair of values (x, y), so you can see at a glance
whether two variables move together. McKinney uses this exact technique to check
relationships in economic data — for example, plotting the change in money supply
(m1) against the change in unemployment (unemp) to look for a pattern.
flowchart LR
A["Two numeric columns"] --> B["One point per row: (x, y)"]
B --> C{"Points trend together?"}
C -->|Up-right| D["Positive relationship"]
C -->|Down-right| E["Negative relationship"]
C -->|Scattered| F["Little/no relationship"]
Basic scatter plot
Section titled “Basic scatter plot”import matplotlib.pyplot as plt
x = [1, 2, 3, 4, 5, 6, 7]
y = [50, 55, 65, 70, 75, 78, 85]
plt.figure(figsize=(7, 4))
plt.scatter(x, y)
plt.title("Hours vs score")
plt.xlabel("Hours")
plt.ylabel("Score")
plt.grid(True, alpha=0.3)
plt.tight_layout()
plt.show()Handle overplotting
Section titled “Handle overplotting”Use transparency:
import matplotlib.pyplot as plt
plt.figure(figsize=(7, 4))
plt.scatter(x, y, alpha=0.6)
plt.title("Scatter with alpha")
plt.tight_layout()
plt.show()Annotate points
Section titled “Annotate points”import matplotlib.pyplot as plt
plt.figure(figsize=(7, 4))
plt.scatter(x, y)
plt.annotate("top", xy=(7, 85), xytext=(6, 88), arrowprops={"arrowstyle": "->"})
plt.title("Annotated scatter")
plt.tight_layout()
plt.show()Visualize it
Section titled “Visualize it”Each dot below is one (x, y) observation — watch the cloud of points build up and
notice the upward trend:
🧪 Try It Yourself
Section titled “🧪 Try It Yourself”Exercise 1 – Draw a scatter plot
Section titled “Exercise 1 – Draw a scatter plot”Exercise 2 – Control transparency
Section titled “Exercise 2 – Control transparency”Exercise 3 – Annotate a point
Section titled “Exercise 3 – Annotate a point”Continue to Pie Chart to see how (and when) to show parts of a whole.
pch.coffeeTagline
pch.coffeeCtapch.feedbackHeading
pch.feedbackSubheading