Unit 05.00: Time on the x-axis, and what interval you chose
Choosing the time interval decides which variation the reader can see.
Daily shows the weekly cycle; weekly absorbs it
Twenty-eight days of data with a strong weekend dip, aggregated to weeks.
The code shows both.
DAILY = [12, 19, 8, 22, 14, 3, 2] * 4
weekly = [sum(DAILY[i:i + 7]) for i in range(0, len(DAILY), 7)]
print(f"daily values, 28 days: {DAILY[:7]} ... (weekly cycle repeats)")
print(f"weekly totals : {weekly}")
print("""
The daily series has a strong weekend dip that dominates the shape. The weekly
series has none, because the aggregation absorbed it.
Neither is wrong. The interval is a choice about which variation you want the
reader to see, and it should follow the decision: staffing needs the daily
pattern, capacity planning does not.
""")
The daily series is dominated by the weekend dip. The weekly totals have none of it - the aggregation absorbed the cycle entirely.
Neither is wrong, and the choice should follow the decision. Staffing needs the daily pattern; capacity planning over a year does not, and the daily version would bury the trend in noise.
The mistake this prevents
The mistake is choosing the interval the data arrives at. Transaction data arrives per transaction and almost nothing should be charted that way - the interval is a decision about which signal you want visible.
Takeaway
The time interval determines which variation is visible. Choose it from the decision, not from how the data arrives.
