1.4 Plotting Episodic ALL Information

Author

Kizen Sasaki

First version

2023 December 01

Modified

2023 December 02

Code
library(readr)
if (!require("RHRV")) {
  install.packages("RHRV")
  library(RHRV)
}
library(RHRV)

FileNo <- 65
FileName <- paste0("time_HR_", FileNo, ".csv")

data <- read.table(file.path("csv_xls", FileName), header = TRUE, sep = ",", 
                   colClasses = c("character", "numeric"))

hr <- data[,2]
rr <- 1/hr
rr = rr*60*1000
Code
hrv.data <- CreateHRVData()
hrv.data <- SetVerbose(hrv.data, TRUE)
hrv.data$Beat$RR = rr
hrv.data$Beat$niHR = hr
hrv.data$Beat$Time = cumsum(rr)/1000
hrv.data <- BuildNIHR(hrv.data)
hrv.data <- FilterNIHR(hrv.data)
Code
hrv.data <- InterpolateNIHR(hrv.data, freqhr = 4)
 Interpolating instantaneous heart rate 
 Frequency: 4 Hz 
 Number of beats: 8660 
 Number of points: 13621 
Code
hrv.data <- CreateFreqAnalysis(hrv.data)
hrv.data <- SetVerbose(hrv.data, TRUE)
Code
hrv.data <- CreateFreqAnalysis(hrv.data)
# perform frequency analysis
hrv.data <- CalculatePowerBand(hrv.data, 
                               indexFreqAnalysis = 1,
                               type = "wavelet", wavelet = "la8",
                               bandtolerance = 0.01, relative = FALSE)

Plot all episode information

Code
hrv.data <- AddEpisodes(hrv.data, InitTimes = c(80, 250, 750, 3000),
                        Tags = c("H", "L", "H", "R"), 
                        Durations = c(150, 450, 100, 400),
                        Values = c(0, 0, 0, 0))

# Plot all tags
PlotPowerBand(hrv.data, indexFreqAnalysis = 1, ymax= 5000, 
              ymaxratio = 50,
              Tags = c("H", "L", "R"))