Visualisering av tidsserier

Introduktion till datavisualisering med Julia

Gustavo Vieira Suñe

Data Analyst

Tidsserier

Ett linjediagram som visar tomatpriser som funktion av tid. Linjen visar en tidsserie med en positiv trend och hög variabilitet.

Introduktion till datavisualisering med Julia

Tomatpriser

  • tomato DataFrame
Date Price (Rupees)
FEB-2004 10.0
MAR-2004 12.0
APR-2004 6.0
MAY-2004 8.0
... ...
  • Sortera datum
    tomato.Date = sort(
      tomato.Date, :Date
    )
    
# Plot time series
plot(
    tomato.Date,
    tomato.Price,

# Customize the plot linewidth=2, linecolor=:tomato, label="Tomato" ) xlabel!("Date") ylabel!("Unit Price (Rupees)")
Introduktion till datavisualisering med Julia

Tomatpriser

Ett linjediagram som visar tomatpriser som funktion av tid. X-axelns etiketter överlappar varandra.

  • tomato DataFrame
Date Price (Rupees)
APR-2004 6.0
APR-2005 10.0
APR-2006 8.0
APR-2007 8.0
... ...
  • Datumkolumnen innehåller strängar!
Introduktion till datavisualisering med Julia

Datum med Julia

using Dates

birthday = Date("1989-12-04")
  • Andra format
birthday = Date(
    "1989/DEC/04", dateformat"y/u/d"
)
birthday = Date(
    "Dec 4, 1989", dateformat"u d, y"
)
Code Match Examples
Y/y År (ÅÅÅÅ) 1989, 2023
m Månad (MM) 1, 10
u Förkortad månad Jan, DEC
U Månadsnamn January, DECEMBER
d Dag (DD) 4, 28
H Timme (HH) 12, 22
M Minut (MM) 05, 25
S Sekund (SS) 10, 59
1 https://docs.julialang.org/en/v1/stdlib/Dates/#Period-Types
Introduktion till datavisualisering med Julia

Tomatpriser med Dates

  • Konvertera strängar till datum
tomato.Date = Date.(
    tomato.Date, dateformat"u-y"
)
  • Sortera efter datum
tomato.Date = sort(
    tomato.Date, :Date
)
Date Price (Rupees)
2004-02-01 10.0
2004-03-01 12.0
2004-04-01 6.0
2004-05-01 8.0
... ...
Introduktion till datavisualisering med Julia

Tidsserie för tomatpriser

# Plot time series
plot(
    tomato.Date,
    tomato.Price,
    # Customize the plot
    linewidth=2,
    linecolor=:tomato,
    label="Tomato"
)
xlabel!("Date")
ylabel!("Unit Price (Rupees)")

Ett linjediagram som visar tomatpriser som funktion av tid. X-axelns etiketter är formaterade som datum och överlappar inte varandra.

Introduktion till datavisualisering med Julia

Annotera ett diagram

# Row with highest price 
maximum_price = tomato[
    argmax(tomato.Price), :]

# Annotate the plot annotate!( # Coordinates maximum_price.Date, maximum_price.Price + 2,
# Annotation text "Highest Price", annotationfontsize=8 )

Ett linjediagram som visar tomatpriser som funktion av tid. Punkten med det högsta priset är markerad med en anteckning.

Introduktion till datavisualisering med Julia

Nu kör vi en övning!

Introduktion till datavisualisering med Julia

Preparing Video For Download...