EconomicsIntermediate

FRED and BLS API Time-Series Plotting

Economic plotting is mostly a data-contract problem: series IDs, frequencies, units, revisions, and comparable scales.

FREDBLSEconomicsTime series

Site connection

The Economic Series Plotter fetches FRED and BLS data and turns it into consistently formatted charts for FED Challenge analysis.

Visual model

Raw scale vs indexed comparison

Toggle indexed and raw scale views to see why economic series often need normalization before comparison.

Interactive

Normalization lets unlike economic series share a visual frame

CPIUnemploymentFed Funds

The Plot Is the Last Step

A clean economic chart starts before Matplotlib or Seaborn. The important choices are what series means, how often it is sampled, what units it uses, whether values are seasonally adjusted, and whether the latest observation is preliminary or revised.

Series IDChoose the exact FRED or BLS identifier.
FrequencyMonthly, quarterly, weekly, or annual values should not be mixed casually.
UnitsLevel, percent, index, change, and annualized rate encode different claims.
TransformIndexing, percent change, or rolling averages make comparisons readable.

FRED vs BLS

FRED is a broad economic database that aggregates many sources and exposes series through a web API. BLS publishes labor, price, productivity, wage, and employment data through its own public API.

A plotting tool that supports both needs an internal normalized shape: date, value, source, series ID, units, title, frequency, and notes.

The Comparison Trap

Putting CPI, unemployment, and an interest rate on one y-axis is usually not meaningful. Indexing each series to a base date can reveal relative movement, while separate axes or panels preserve units.

For policy analysis, the transformation must be explicit because a visual slope can change depending on whether the chart uses levels, percentage changes, or indexed values.

TransformationUse when
Raw levelUnits are directly meaningful
Indexed to 100Comparing relative movement across unlike units
Percent changeStudying growth rates or inflation
Rolling averageReducing high-frequency noise
Year-over-year changeHandling seasonality in monthly data

Common Pitfalls

  • Mixing seasonally adjusted and non-adjusted series.
  • Plotting unlike units on one axis without indexing.
  • Ignoring revisions or vintage data.
  • Treating missing months as zero.
  • Using chart style consistency to hide incompatible definitions.

Quick check

Quiz

Why index two economic series to 100?
  1. To compare relative movement despite unlike units
  2. To delete all missing values
  3. To make API keys unnecessary
  4. To turn monthly data into annual data

Indexing makes relative change comparable when raw units differ.

What should every fetched economic series retain?
  1. Only the color used in the chart
  2. Source metadata such as units, frequency, and series ID
  3. A random category
  4. The browser width

Metadata is needed to interpret and audit the chart.

Sources and Further Reading