ghostai1 commited on
Commit
3e1f389
·
verified ·
1 Parent(s): b434a98

Update script.js

Browse files
Files changed (1) hide show
  1. script.js +43 -0
script.js CHANGED
@@ -0,0 +1,43 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ document.addEventListener('DOMContentLoaded', () => {
2
+ const tableBody = document.getElementById('dataTable');
3
+ const sentimentFilter = document.getElementById('sentimentFilter');
4
+
5
+ // Load CSV data
6
+ fetch('data.csv')
7
+ .then(response => response.text())
8
+ .then(data => {
9
+ const rows = data.trim().split('\n').slice(1); // Skip header
10
+ const dataset = rows.map(row => {
11
+ const [index, text, label] = row.split(/,(?=(?:(?:[^"]*"){2})*[^"]*$)/);
12
+ return { index: parseInt(index), text: text.replace(/^"|"$/g, ''), label: label.replace(/^"|"$/g, '') };
13
+ });
14
+
15
+ // Display data
16
+ function displayData(filter = 'all') {
17
+ tableBody.innerHTML = '';
18
+ dataset.forEach(item => {
19
+ if (filter === 'all' || item.label === filter) {
20
+ const row = document.createElement('tr');
21
+ row.innerHTML = `
22
+ <td>${item.index}</td>
23
+ <td>${item.text}</td>
24
+ <td>${item.label}</td>
25
+ `;
26
+ tableBody.appendChild(row);
27
+ }
28
+ });
29
+ }
30
+
31
+ // Initial display
32
+ displayData();
33
+
34
+ // Filter event listener
35
+ sentimentFilter.addEventListener('change', () => {
36
+ displayData(sentimentFilter.value);
37
+ });
38
+ })
39
+ .catch(error => {
40
+ console.error('Error loading data:', error);
41
+ tableBody.innerHTML = '<tr><td colspan="3">Error loading dataset.</td></tr>';
42
+ });
43
+ });