Initial commit
This commit is contained in:
16
components/viz/data/deepCareExtractor.ts
Normal file
16
components/viz/data/deepCareExtractor.ts
Normal file
@@ -0,0 +1,16 @@
|
||||
import { extractAudioData } from './extractAudioData'
|
||||
|
||||
const labels: string[] = []
|
||||
const noise: number[] = []
|
||||
|
||||
// Funktion zum Laden der Daten und Initialisieren der Chart-Daten
|
||||
export const loadChartData = async (csvFilePath: string): Promise<void> => {
|
||||
const audioData = await extractAudioData(csvFilePath)
|
||||
|
||||
audioData.forEach((row:any) => {
|
||||
labels.push(row.timestamp)
|
||||
noise.push(row.sensors_ambientData_noise)
|
||||
})
|
||||
}
|
||||
|
||||
await loadChartData('/audioData.csv')
|
36
components/viz/data/extractAudioData.ts
Normal file
36
components/viz/data/extractAudioData.ts
Normal file
@@ -0,0 +1,36 @@
|
||||
import Papa from 'papaparse'
|
||||
|
||||
// Typdefinitionen für die Daten
|
||||
interface AudioData {
|
||||
timestamp: string
|
||||
sensors_ambientData_noise: number
|
||||
}
|
||||
|
||||
// Funktion zum Laden und Extrahieren der CSV-Daten
|
||||
export const extractAudioData = async (csvFilePath: string): Promise<AudioData[]> => {
|
||||
const response = await fetch(csvFilePath)
|
||||
const csvData = await response.text()
|
||||
|
||||
const audioData: AudioData[] = []
|
||||
|
||||
// eslint-disable-next-line import/no-named-as-default-member
|
||||
Papa.parse(csvData, {
|
||||
header: true,
|
||||
skipEmptyLines: true,
|
||||
complete: (result) => {
|
||||
result.data.forEach((row: any) => {
|
||||
// Extrahiere und parse die Daten
|
||||
const timestamp = row.timestamp
|
||||
const noise = parseFloat(row.sensors_ambientData_noise)
|
||||
|
||||
if (timestamp && !isNaN(noise)) {
|
||||
audioData.push({ timestamp, sensors_ambientData_noise: noise })
|
||||
}
|
||||
})
|
||||
}
|
||||
})
|
||||
|
||||
return new Promise((resolve) => {
|
||||
setTimeout(() => resolve(audioData), 0) // Simuliere async Verarbeitung
|
||||
})
|
||||
}
|
Reference in New Issue
Block a user