diff --git a/VANA-php/database/migrations/2024_11_23_131212_create_subtitle_data.php b/VANA-php/database/migrations/2024_11_23_131212_create_subtitle_data.php new file mode 100644 index 0000000..921fe65 --- /dev/null +++ b/VANA-php/database/migrations/2024_11_23_131212_create_subtitle_data.php @@ -0,0 +1,19 @@ +json('subtitle_data')->nullable(); + }); + } + +}; diff --git a/VANA-php/resources/js/app.js b/VANA-php/resources/js/app.js index 66f5687..5239d29 100644 --- a/VANA-php/resources/js/app.js +++ b/VANA-php/resources/js/app.js @@ -28,61 +28,67 @@ tabs.forEach(tab => { }) }) +// Chart word count over time +const time = [0, 7, 12, 15, 30, 33, 36, 39, 45, 48, 53, 59, 62, 67, 72, 75, 79, 87, 92, 95, 97, 101, 108, 113, 129, 141, 150, 154, 159, 165, 173, 177, 180, 183, 187, 195, 204, 207, 210, 216, 218, 223, 225, 233, 238, 241, 246, 250, 252, 255, 260, 261, 265, 272, 273, 277, 292, 295, 299, 309, 313, 316, 319, 322, 325, 336, 340, 347, 353, 358, 363, 367, 376, 378, 384, 385, 387, 402, 406, 415, 421, 427, 434, 441, 444, 447, 451, 462, 472, 487, 493, 501, 503, 508, 510, 518, 525, 527, 533, 542, 545, 551, 556, 564, 569, 582, 587, 591, 603, 607, 613, 617, 621, 624, 633, 636, 643, 645, 647, 650, 652, 665, 671, 677, 683, 685, 691, 695, 701, 715, 720, 723, 730, 752, 756, 760, 764, 769, 772, 774, 778, 784, 792, 799, 804, 814, 820, 823, 826, 833, 843, 845, 847, 854, 858, 865, 871, 877, 883, 887, 891, 894, 900, 902, 904, 907, 909, 918, 924, 936, 940, 948, 955, 962, 975, 978, 981, 989, 999, 1002, 1012, 1014, 1029, 1042, 1047, 1049, 1054, 1057, 1064, 1077, 1080, 1087, 1100, 1103, 1107, 1112, 1116, 1118, 1120, 1125, 1129, 1134, 1140, 1146, 1148, 1153, 1156, 1166, 1168, 1178, 1183, 1203, 1215, 1218, 1225, 1229, 1236, 1240, 1246, 1253, 1258, 1265, 1269, 1273, 1277, 1280, 1285, 1287, 1290, 1294, 1297, 1303, 1309, 1312, 1314, 1317, 1319, 1320, 1330, 1333, 1342, 1345, 1348, 1351, 1359, 1369, 1371, 1374, 1386, 1394, 1397, 1407, 1420, 1423, 1425, 1433, 1434, 1435, 1440, 1442, 1444, 1452, 1457, 1460, 1471, 1486, 1501, 1504, 1509, 1518, 1522, 1528, 1531, 1534, 1536, 1539, 1543, 1545, 1548, 1553, 1557, 1560, 1569, 1573, 1578, 1587, 1592, 1594, 1596, 1603, 1608, 1611, 1614, 1617, 1623, 1628, 1632, 1635, 1637, 1644, 1649, 1655, 1657, 1658, 1661, 1664, 1666, 1668, 1671, 1673, 1675, 1678, 1681, 1685, 1693, 1695, 1698, 1704, 1706, 1709, 1711, 1717, 1721, 1729, 1731, 1734, 1738, 1742, 1744, 1749, 1755, 1757, 1761, 1763, 1765, 1773, 1777, 1781, 1785, 1787, 1789, 1791, 1798, 1810, 1812, 1813, 1816, 1822, 1826, 1829, 1835, 1838, 1843, 1845, 1848, 1850, 1853, 1855, 1857, 1859, 1862, 1868, 1871, 1875, 1884, 1887, 1890, 1893, 1896, 1901, 1904, 1908, 1914, 1915, 1916, 1921, 1929, 1932, 1935, 1944, 1953, 1955, 1960, 1967, 1970, 1973, 1977, 1983, 1988, 1991, 2004, 2006, 2009, 2011, 2014, 2016, 2021, 2024, 2027, 2034, 2040, 2046, 2051, 2054, 2061, 2068, 2070, 2074, 2078, 2090, 2097, 2099, 2103, 2105, 2106, 2107, 2109, 2114, 2115, 2117, 2118, 2122, 2129, 2132, 2134, 2137, 2139, 2142, 2144, 2148, 2155, 2157, 2159, 2164, 2166, 2170, 2172, 2175, 2178, 2182, 2185, 2191, 2202, 2208, 2217, 2218, 2224, 2228, 2231, 2236, 2239, 2248, 2264, 2268, 2272, 2278, 2283, 2288, 2290, 2293, 2298, 2302, 2304, 2309, 2312, 2319, 2322, 2327, 2330, 2339, 2346, 2355, 2362, 2369, 2372, 2377, 2382, 2388, 2390, 2394, 2400, 2404, 2410, 2420, 2421, 2428, 2434, 2440, 2446, 2450, 2456, 2460, 2467, 2471, 2483, 2489, 2494, 2499, 2501, 2503, 2509, 2519, 2524, 2527, 2532, 2534, 2539, 2541, 2548, 2550, 2553, 2564, 2567, 2577, 2585, 2590, 2600, 2606, 2612, 2614, 2615, 2625, 2640, 2645, 2654, 2656, 2668, 2680, 2686, 2698, 2701, 2711, 2717, 2721, 2723, 2728, 2738, 2752, 2761, 2764, 2774, 2779, 2782, 2792, 2798, 2801, 2805, 2812, 2817, 2827, 2830, 2837, 2840, 2842, 2849, 2855, 2858, 2864, 2866, 2873, 2877, 2880, 2884, 2892, 2894, 2898, 2905, 2911, 2913, 2915, 2917, 2928, 2934, 2937, 2946, 2953, 2956, 2963, 2968, 2969, 2977, 2985, 2992, 3001, 3005, 3010, 3015, 3020, 3032, 3038, 3044, 3050, 3055, 3058, 3060, 3063, 3076, 3081, 3086, 3094, 3100, 3104, 3112, 3117, 3122, 3125, 3131, 3134, 3137, 3146, 3152, 3157, 3162, 3171, 3173, 3177, 3185, 3191, 3195, 3204, 3209, 3219, 3221, 3225, 3227, 3230, 3234, 3240, 3249, 3252, 3255, 3261, 3266, 3271, 3275, 3279, 3284, 3288, 3293, 3296, 3309, 3316, 3320, 3324, 3329, 3339, 3355, 3361, 3375, 3379, 3391, 3398, 3407, 3411, 3419, 3421, 3430, 3434, 3441, 3455, 3460, 3462, 3464, 3467, 3473, 3480, 3483, 3489, 3491, 3495, 3501, 3508, 3513, 3515, 3518, 3521, 3525, 3527, 3530, 3532, 3533, 3537, 3542, 3545, 3550, 3553, 3558, 3564, 3567, 3574, 3579, 3583, 3586, 3591, 3594, 3600, 3605, 3607, 3610, 3612, 3615, 3616, 3617, 3620, 3621, 3623, 3624, 3628, 3631, 3635, 3639, 3648, 3651, 3655, 3662, 3667, 3674, 3676, 3678, 3682, 3686, 3692, 3695, 3699, 3705, 3711, 3714, 3717, 3722, 3725, 3729, 3736, 3739, 3741, 3746, 3751, 3753, 3758, 3763, 3767, 3778, 3784, 3790, 3798, 3804, 3807, 3809, 3815, 3821, 3825, 3828, 3830, 3832, 3834, 3845, 3848, 3854, 3855, 3866, 3868, 3874, 3877, 3881, 3887, 3890, 3895, 3903, 3906, 3910, 3917, 3925, 3929, 3931, 3937, 3940, 3942, 3951, 3953, 3956, 3958, 3961, 3968, 3977, 3980, 3984, 3986, 3989, 3991, 3998, 4001, 4007, 4012, 4018, 4020, 4022, 4028, 4032, 4036, 4041, 4044, 4047, 4053, 4056, 4059, 4064, 4067, 4071, 4073, 4077, 4079, 4081, 4081, 4085, 4088, 4090, 4093, 4100, 4103, 4110, 4112, 4114, 4116, 4120, 4124, 4128, 4133, 4137, 4143, 4151, 4162, 4166, 4170, 4179, 4184, 4185, 4191, 4194, 4196, 4201, 4203, 4205, 4209, 4212, 4217, 4222, 4225, 4228, 4236, 4245, 4248, 4252, 4256, 4262, 4271, 4273, 4277, 4280, 4283, 4285, 4296, 4302, 4304, 4308, 4311, 4313, 4315, 4317, 4319, 4322, 4323, 4324, 4330, 4333, 4336, 4339, 4344, 4347, 4353, 4357, 4363, 4374, 4377, 4381, 4386, 4392, 4395, 4400, 4402, 4403, 4410, 4417, 4419, 4424, 4426, 4439, 4442, 4444, 4451, 4456, 4464, 4480, 4483, 4486, 4493, 4498, 4501, 4503, 4511, 4513, 4517, 4522, 4530, 4538, 4541, 4544, 4547, 4550, 4554, 4561, 4565, 4569, 4576, 4580, 4584, 4588, 4590, 4593, 4599, 4605, 4608, 4615, 4618, 4629, 4634, 4638, 4647, 4650, 4655, 4658, 4664, 4668, 4675, 4679, 4683, 4689, 4694, 4698, 4704, 4710, 4717, 4719, 4721, 4722, 4726, 4731, 4735]; +const words = [0, 10, 23, 27, 31, 35, 37, 48, 59, 65, 73, 86, 92, 102, 116, 121, 130, 145, 151, 157, 159, 170, 187, 200, 230, 243, 262, 272, 279, 293, 304, 314, 319, 327, 336, 353, 373, 381, 387, 403, 409, 423, 429, 448, 465, 472, 484, 496, 503, 512, 525, 527, 536, 556, 558, 564, 584, 589, 597, 619, 628, 636, 642, 648, 657, 676, 687, 704, 717, 729, 744, 756, 772, 781, 796, 799, 801, 833, 843, 863, 872, 882, 888, 903, 913, 922, 932, 957, 978, 1019, 1033, 1057, 1067, 1081, 1086, 1101, 1120, 1123, 1143, 1169, 1178, 1194, 1203, 1221, 1236, 1258, 1267, 1275, 1304, 1309, 1324, 1332, 1345, 1354, 1366, 1379, 1396, 1402, 1410, 1413, 1422, 1448, 1460, 1469, 1485, 1490, 1503, 1513, 1529, 1552, 1562, 1568, 1585, 1635, 1643, 1653, 1662, 1676, 1684, 1690, 1697, 1714, 1726, 1742, 1752, 1779, 1793, 1796, 1806, 1826, 1846, 1853, 1860, 1877, 1888, 1897, 1915, 1930, 1946, 1956, 1970, 1976, 1992, 1995, 2003, 2011, 2015, 2032, 2046, 2076, 2088, 2113, 2136, 2155, 2195, 2197, 2213, 2230, 2249, 2258, 2279, 2285, 2321, 2351, 2362, 2367, 2383, 2395, 2412, 2449, 2457, 2468, 2496, 2509, 2524, 2542, 2552, 2561, 2565, 2582, 2600, 2615, 2639, 2655, 2661, 2677, 2686, 2707, 2716, 2740, 2747, 2774, 2789, 2799, 2803, 2814, 2830, 2831, 2844, 2856, 2857, 2869, 2878, 2888, 2900, 2907, 2918, 2925, 2933, 2942, 2950, 2966, 2977, 2989, 2996, 3006, 3012, 3017, 3039, 3045, 3071, 3083, 3088, 3095, 3115, 3139, 3145, 3155, 3178, 3199, 3207, 3237, 3266, 3276, 3280, 3299, 3303, 3309, 3320, 3324, 3332, 3356, 3368, 3376, 3402, 3440, 3464, 3471, 3483, 3502, 3513, 3531, 3542, 3551, 3558, 3565, 3579, 3586, 3590, 3601, 3610, 3617, 3644, 3654, 3665, 3689, 3701, 3706, 3709, 3721, 3732, 3744, 3749, 3756, 3775, 3786, 3801, 3807, 3813, 3833, 3849, 3866, 3874, 3875, 3884, 3887, 3893, 3898, 3904, 3909, 3916, 3920, 3931, 3939, 3963, 3971, 3982, 3997, 4003, 4009, 4017, 4034, 4042, 4055, 4064, 4067, 4078, 4089, 4094, 4112, 4125, 4132, 4143, 4151, 4157, 4177, 4187, 4204, 4208, 4219, 4227, 4231, 4248, 4253, 4259, 4266, 4272, 4285, 4296, 4308, 4322, 4328, 4341, 4348, 4352, 4355, 4363, 4369, 4374, 4379, 4387, 4405, 4411, 4417, 4432, 4442, 4446, 4456, 4463, 4473, 4485, 4495, 4508, 4512, 4517, 4533, 4551, 4557, 4564, 4590, 4625, 4628, 4640, 4659, 4667, 4676, 4681, 4694, 4701, 4708, 4734, 4738, 4745, 4751, 4760, 4769, 4783, 4792, 4796, 4808, 4817, 4831, 4846, 4854, 4873, 4891, 4895, 4907, 4912, 4948, 4963, 4970, 4982, 4988, 4994, 4997, 5004, 5023, 5028, 5032, 5036, 5044, 5060, 5072, 5076, 5083, 5089, 5096, 5102, 5111, 5134, 5141, 5151, 5166, 5172, 5183, 5188, 5200, 5211, 5216, 5229, 5240, 5256, 5275, 5297, 5299, 5311, 5319, 5328, 5341, 5350, 5369, 5389, 5398, 5406, 5422, 5436, 5449, 5454, 5460, 5469, 5478, 5481, 5493, 5500, 5521, 5528, 5538, 5546, 5567, 5583, 5606, 5628, 5636, 5641, 5650, 5655, 5665, 5669, 5678, 5694, 5703, 5720, 5738, 5744, 5770, 5787, 5806, 5823, 5835, 5857, 5871, 5892, 5905, 5929, 5945, 5961, 5974, 5986, 5992, 6008, 6034, 6052, 6060, 6071, 6081, 6094, 6099, 6122, 6131, 6141, 6177, 6183, 6212, 6238, 6246, 6273, 6295, 6316, 6318, 6322, 6345, 6384, 6390, 6411, 6421, 6445, 6483, 6500, 6527, 6537, 6563, 6582, 6592, 6603, 6615, 6640, 6669, 6693, 6700, 6716, 6730, 6739, 6762, 6778, 6779, 6799, 6819, 6831, 6853, 6861, 6882, 6890, 6894, 6909, 6924, 6929, 6942, 6948, 6963, 6969, 6979, 6986, 7008, 7012, 7021, 7034, 7051, 7059, 7065, 7072, 7098, 7113, 7117, 7143, 7164, 7175, 7191, 7199, 7204, 7221, 7244, 7262, 7286, 7300, 7319, 7329, 7344, 7374, 7383, 7398, 7405, 7413, 7421, 7426, 7436, 7463, 7478, 7490, 7511, 7525, 7535, 7563, 7576, 7586, 7595, 7611, 7617, 7624, 7646, 7661, 7678, 7691, 7713, 7719, 7732, 7750, 7767, 7778, 7801, 7816, 7827, 7832, 7844, 7856, 7863, 7875, 7893, 7915, 7925, 7934, 7953, 7966, 7983, 8000, 8013, 8028, 8040, 8052, 8062, 8089, 8104, 8116, 8129, 8143, 8157, 8190, 8205, 8241, 8253, 8276, 8290, 8306, 8324, 8342, 8348, 8365, 8373, 8389, 8410, 8428, 8434, 8441, 8448, 8461, 8482, 8488, 8501, 8503, 8512, 8526, 8548, 8567, 8574, 8583, 8594, 8604, 8610, 8620, 8625, 8630, 8640, 8651, 8660, 8677, 8681, 8698, 8721, 8726, 8741, 8756, 8769, 8779, 8796, 8800, 8812, 8818, 8829, 8836, 8842, 8851, 8853, 8857, 8864, 8868, 8875, 8876, 8882, 8888, 8897, 8905, 8916, 8925, 8935, 8945, 8956, 8980, 8988, 8993, 9001, 9009, 9022, 9030, 9036, 9058, 9074, 9080, 9090, 9108, 9116, 9127, 9141, 9147, 9157, 9166, 9180, 9188, 9197, 9212, 9223, 9240, 9254, 9267, 9281, 9298, 9305, 9309, 9322, 9332, 9340, 9345, 9349, 9353, 9364, 9384, 9387, 9399, 9404, 9430, 9435, 9456, 9464, 9473, 9481, 9492, 9508, 9529, 9541, 9554, 9567, 9593, 9607, 9613, 9621, 9625, 9635, 9659, 9667, 9673, 9679, 9686, 9700, 9721, 9728, 9738, 9744, 9745, 9751, 9766, 9773, 9786, 9803, 9821, 9827, 9834, 9846, 9859, 9873, 9885, 9891, 9894, 9912, 9924, 9929, 9938, 9945, 9952, 9960, 9970, 9977, 9978, 9986, 9995, 10006, 10013, 10023, 10036, 10047, 10060, 10066, 10074, 10081, 10088, 10099, 10108, 10121, 10133, 10148, 10169, 10194, 10203, 10210, 10227, 10242, 10244, 10265, 10273, 10281, 10298, 10301, 10306, 10319, 10326, 10341, 10355, 10360, 10370, 10388, 10401, 10409, 10422, 10434, 10441, 10460, 10468, 10479, 10490, 10500, 10508, 10533, 10550, 10558, 10563, 10575, 10582, 10589, 10593, 10599, 10607, 10611, 10617, 10639, 10649, 10657, 10664, 10675, 10685, 10704, 10718, 10730, 10747, 10753, 10762, 10773, 10784, 10791, 10805, 10810, 10815, 10829, 10844, 10849, 10862, 10867, 10894, 10902, 10907, 10925, 10938, 10951, 10965, 10974, 10982, 10997, 11008, 11015, 11021, 11039, 11041, 11051, 11058, 11065, 11079, 11085, 11093, 11099, 11106, 11116, 11127, 11135, 11146, 11163, 11172, 11183, 11190, 11195, 11205, 11212, 11221, 11229, 11240, 11249, 11266, 11274, 11284, 11304, 11311, 11334, 11344, 11360, 11369, 11377, 11389, 11402, 11417, 11430, 11431, 11435, 11440, 11452, 11458, 11459, 11467, 11474, 11488, 11494] -var chartDom = document.querySelectorAll('.track')[0].querySelector('.track-viz'); -var myChart = echarts.init(chartDom); -var option; - -option = { +const wordCountTrack = document.getElementById('words-count-track'); +const chartWordCount = echarts.init(wordCountTrack); +const chartWordCountOptions = { grid: { + show: false, top: 0, bottom: 0, right: 0, left: 0 }, xAxis: { - type: 'time', - data: [0, 4.722, 7.537, 10.364, 14.103, 16.898, 20.082, 23.652, 35.462, 37.952, 40.222, 43.132, 46.902, 51.041, 54.442, 57.302, 60.062, 62.712, 65.822, 69.333, 72.013, 76.602, 79.521, 83.082, 86.825, 90.42, 93.734, 97.512, 100.594, 106.371, 108.752, 111.292, 114.304, 116.902, 119.991, 123.851, 128.193, 131.702, 135.749, 137.851, 140.301, 142.471, 145.302, 147.432, 151.712, 155.272, 160.093, 163.942, 181.852, 185.292, 190.261, 192.501, 194.804, 199.245, 204.112, 206.952, 209.419, 211.475, 213.641, 215.743, 217.881, 220.243, 222.712, 224.802, 226.811, 229.191, 231.891, 234.182, 236.784, 238.934, 242.421, 245.101, 247.711, 249.982, 252.841, 254.962, 257.612, 260.432, 263.971, 266.403, 270.611, 273.072, 275.331, 278.43, 281.71, 284.661, 287.514, 290.011, 292.362, 298.051, 301.111, 303.341, 306.641, 308.722, 310.732, 312.802, 315.101, 319.461, 323.131, 325.662, 328.103, 330.957, 334.924, 338.411, 342.032, 345.231, 348.711, 352.072, 354.371, 357.061, 359.215, 361.412, 363.651, 367.013, 369.491, 373.865, 377.531, 381.251, 384.065, 386.921, 389.416, 393.051, 395.471, 398.834, 402.411, 404.381, 407.361, 409.241, 411.181, 413.371, 415.241, 417.214, 419.211, 421.821, 424.042, 426.111, 429.101, 431.023, 435.403, 438.06, 440.226, 445.161, 449.621, 452.181, 457.771, 459.812, 461.811, 463.67, 465.541, 468.161, 470.31, 472.721, 474.711, 476.631, 478.851, 482.063, 484.901, 487.172, 490.38, 493.571, 496.286, 498.781, 501.751, 504.306, 507.31, 509.721, 512.14, 514.418, 516.64, 518.851, 521.933, 524.77, 533.221, 535.731, 538.801, 541.343, 543.639, 545.841, 547.9, 552.421, 556.634, 560.531, 563.322, 566.131, 568.681, 570.999, 573.061, 575.11, 577.251, 579.44, 582.641, 585.471, 587.721, 591.171, 595.69, 597.68, 600.091, 602.151, 604.241, 606.703, 608.819, 611.362, 614.006, 617.37, 620.253, 622.401, 624.901, 627.1, 629.27, 631.67, 636.532, 639.203, 645.751, 647.96, 651.123, 655.021, 657.51, 659.681, 662.41, 666.29, 673.334, 675.893, 678.791, 681.385, 684.82, 688.894, 690.97, 692.971, 694.951, 697.23, 700.88, 703.98, 706.88, 709.81, 713.181, 716.62, 718.797, 719.81, 723.76, 726.23, 728.681, 732.198, 736.42, 738.67, 740.76, 743.42, 745.66, 748.789, 750.59, 752.57, 754.27, 756.11, 758.14, 762.302, 766.11, 768.43, 770.49, 772.79, 776.637, 779.56, 782.87, 786.691, 788.81, 791.568, 794.34, 796.6, 798.71, 801.15, 803.3, 806.081, 808.2, 810.95, 813.512, 815.432, 817.322, 819.243, 821.162, 823.23, 825.33, 827.49, 829.636, 831.79, 834.09, 837.439, 840.77, 843.17, 846.2, 850.45, 852.987, 855.47, 857.631, 859.91, 862.03, 864.81, 867.67, 869.891, 873.052, 876.169, 879.803, 883.35, 886.17, 888.46, 893.982, 896.029, 897.99, 900.17, 902.74, 905.96, 908.301, 910.299, 912.3, 914.15, 916.12, 918.19, 921.35, 924.03, 927.799, 930.96, 933.01, 935.23, 938.17, 940.85, 943.339, 946.039, 948.36, 950.343, 952.4, 954.47, 956.352, 958.27, 960.232, 962.277, 964.309, 966.449, 969.66, 972.132, 974.27, 976.56, 980.619, 983.261, 986.05, 988.126, 990.457, 993.85, 996.479, 1003.59, 1006.67, 1011.57, 1017.14, 1026.48, 1030.659, 1033.729, 1036.742, 1039.15, 1046.311, 1050.299, 1052.589, 1054.699, 1057.86, 1062.432, 1066.021, 1066.919, 1071.629, 1073.97, 1076.113, 1078.29, 1080.79, 1087.61, 1090.369, 1093.009, 1095.12, 1097.271, 1099.561, 1102.279, 1105.989, 1108.219, 1111.209, 1114.09, 1116.659, 1123.399, 1127.01, 1129.282, 1133.727, 1139.129, 1143.399, 1146.8, 1149.72, 1153.409, 1158.269, 1161.99, 1165.441, 1168.88, 1172.129, 1174.269, 1176.342, 1181.039, 1182.94, 1185.4, 1188.689, 1192.001, 1195.349, 1198.309, 1200.469, 1202.759, 1206.017, 1208.21, 1210.919, 1213.309, 1215.269, 1217.359, 1219.96, 1225.251, 1233.285, 1244.31, 1246.269, 1248.339, 1250.889, 1253.302, 1256.739, 1260.139, 1262.72, 1266.869, 1269.27, 1273.149, 1275.339, 1278.591, 1284.859, 1287.19, 1289.464, 1292.142, 1294.338, 1296.449, 1298.529, 1300.969, 1303.789, 1305.829, 1307.879, 1309.739, 1312.548, 1314.829, 1316.909, 1319.75, 1321.922, 1324.629, 1327.35, 1329.478, 1331.866, 1334.669, 1337.899, 1341.539, 1347.718, 1350.609, 1353.279, 1356.219, 1359.479, 1362.5, 1364.568, 1367.09, 1369.127, 1371.249, 1374.201, 1376.4, 1378.472, 1380.828, 1383.678, 1385.878, 1388.619, 1391.119, 1393.579, 1395.699, 1397.93, 1400.146, 1403.959, 1406.769, 1409.329, 1411.825, 1414.868, 1417.159, 1420.298, 1423.549, 1425.839, 1430.471, 1434.088, 1436.439, 1438.598, 1440.684, 1442.879, 1445.069, 1447.811, 1450.759, 1454.058, 1458.018, 1461.269, 1465.209, 1469.358, 1475.548, 1481.431, 1483.449, 1490.328, 1494.199, 1502.978, 1505.388, 1510.068, 1513.519, 1517.529, 1521.258, 1523.538, 1527.398, 1531.253, 1534.089, 1538.458, 1540.588, 1545.83, 1548.048, 1552.13, 1555.088, 1558.478, 1560.548, 1563.038, 1565.109, 1567.169, 1569.259, 1571.278, 1573.748, 1575.838, 1577.72, 1579.649, 1581.746, 1584.019, 1586.191, 1588.469, 1591.73, 1595.128, 1598.788, 1600.999, 1603.143, 1605.327, 1610.178, 1612.428, 1617.501, 1621.319, 1625.978, 1628.508, 1631.504, 1634.528, 1637.501, 1641.02, 1643.52, 1645.648, 1648.818, 1652.458, 1654.608, 1658.159, 1660.688, 1662.82, 1664.908, 1668.988, 1672.738, 1677.887, 1680.598, 1682.469, 1684.518, 1686.825, 1688.839, 1691.449, 1693.898, 1696.431, 1700.217, 1702.608, 1705.048, 1707.42, 1709.798, 1712.467, 1714.868, 1717.257, 1720.408, 1723.109, 1726.37, 1730.927, 1733.358, 1736.188, 1738.888, 1740.943, 1743.782, 1746.058, 1753.83, 1762.849, 1765.817, 1771.408, 1773.548, 1777.068, 1779.695, 1782.757, 1787.458, 1789.77, 1795.598, 1797.948, 1800.937, 1803.918, 1808.048, 1812.548, 1818.438, 1821.328, 1823.628, 1826.02, 1828.568, 1831.128, 1835.427, 1838.127, 1840.698, 1844.968, 1854.107, 1857.247, 1859.437, 1861.518, 1863.732, 1868.859, 1870.997, 1875.137, 1878.678, 1882.848, 1887.117, 1892.744, 1896.688, 1902.978, 1907.019, 1909.107, 1912.977, 1917.788, 1920.259, 1923.607, 1927.639, 1931.307, 1934.948, 1939.277, 1943.959, 1951.548, 1956.827, 1960.609, 1963.037, 1965.167, 1967.888, 1970.508, 1973.228, 1976.427, 1978.469, 1980.762, 1982.892, 1986.928, 1989.309, 1992.427, 1996.329, 1998.829, 2001.987, 2005.332, 2009.046, 2012.067, 2014.359, 2016.471, 2019.897, 2023.347, 2025.678, 2027.737, 2029.847, 2034.297, 2036.387, 2038.877, 2043.167, 2049.197, 2051.708, 2054.28, 2056.428, 2058.967, 2061.976, 2066.206, 2068.496, 2072.757, 2075.087, 2078.867, 2081.417, 2083.844, 2086.777, 2088.897, 2091.429, 2093.637, 2095.815, 2098.617, 2101.257, 2106.217, 2108.707, 2111.287, 2114.349, 2117.247, 2120.287, 2124.067, 2127.577, 2131.81, 2134.449, 2138.717, 2140.858, 2143.087, 2145.325, 2147.387, 2150.097, 2152.176, 2154.673, 2157.437, 2160.377, 2163.167, 2165.836, 2168.398, 2171.391, 2176.107, 2179.477, 2182.06, 2188.856, 2194.167, 2197.336, 2201.836, 2209.366, 2214.637, 2216.819, 2219.057, 2222.026, 2226.688, 2229.597, 2232.528, 2234.647, 2237.976, 2241.836, 2244.217, 2248.247, 2251.137, 2254.977, 2258.689, 2263.809, 2265.937, 2268.357, 2270.546, 2272.727, 2274.987, 2277.518, 2279.757, 2284.657, 2287.447, 2290.736, 2295.659, 2300.777, 2305.586, 2312.266, 2319.407, 2323.146, 2325.856, 2328.796, 2331.749, 2334.267, 2337.621, 2340.966, 2343.146, 2345.382, 2348.156, 2351.028, 2353.957, 2356.259, 2358.312, 2360.321, 2362.246, 2364.176, 2366.106, 2368.456, 2370.566, 2373.187, 2375.308, 2385.677, 2388.326, 2391.187, 2393.296, 2395.976, 2398.966, 2401.786, 2407.0, 2409.817, 2412.105, 2414.835, 2418.116, 2420.511, 2422.666, 2425.99, 2430.826, 2434.016, 2436.266, 2439.767, 2443.237, 2447.666, 2450.786, 2452.996, 2455.477, 2459.247, 2462.167, 2464.376, 2467.856, 2471.116, 2474.247, 2476.376, 2479.26, 2482.126, 2485.226, 2488.59, 2490.656, 2493.607, 2497.635, 2499.748, 2501.886, 2505.866, 2508.646, 2513.976, 2518.196, 2520.216, 2523.436, 2526.686, 2529.517, 2532.127, 2534.766, 2536.856, 2538.946, 2541.377, 2544.186, 2547.336, 2552.106, 2554.315, 2558.816, 2562.216, 2564.278, 2567.497, 2569.415, 2571.616, 2574.296, 2578.068, 2580.056, 2582.146, 2584.116, 2586.138, 2588.156, 2590.716, 2592.849, 2595.296, 2597.458, 2599.936, 2602.396, 2605.466, 2607.606, 2609.761, 2612.256, 2614.656, 2617.586, 2622.055, 2624.558, 2627.106, 2629.219, 2631.366, 2634.066, 2636.322, 2638.485, 2641.423, 2643.515, 2645.716, 2647.823, 2649.946, 2652.226, 2654.316, 2656.355, 2658.636, 2662.526, 2665.906, 2667.956, 2670.446, 2672.545, 2674.485, 2676.435, 2678.666, 2680.644, 2682.676, 2684.917, 2686.856, 2689.006, 2692.715, 2695.706, 2698.022, 2700.256, 2703.266, 2705.436, 2722.916, 2725.395, 2727.927, 2730.066, 2733.286, 2736.207, 2740.061, 2744.825, 2750.455, 2753.216, 2756.276, 2759.126, 2761.315, 2764.365, 2769.475, 2772.325, 2774.516, 2778.127, 2780.365, 2783.145, 2785.547, 2788.276, 2790.475, 2792.685, 2794.687, 2797.877, 2799.982, 2803.625, 2808.426, 2810.191, 2812.354, 2816.715, 2820.167, 2824.346, 2828.296, 2831.375, 2834.661, 2837.966, 2855.295, 2858.64, 2860.745, 2862.871, 2864.977, 2867.185, 2869.525, 2872.155, 2874.815, 2877.077, 2879.341, 2882.356, 2884.525, 2887.225, 2890.335, 2893.347, 2896.626, 2899.045, 2901.985, 2908.769, 2911.075, 2914.215, 2916.516, 2918.635, 2921.265, 2924.696, 2927.515, 2929.945, 2933.906, 2938.546, 2941.942, 2946.566, 2949.955, 2952.318, 2955.355, 2957.515, 2960.715, 2965.795, 2968.475, 2970.625, 2973.026, 2978.155, 2980.005, 2982.085, 2984.126, 2986.136, 2988.565, 2990.515, 2992.986, 2994.965, 2997.145, 3001.285, 3003.895, 3006.484, 3008.875, 3011.455, 3014.015, 3015.8, 3018.125, 3020.163, 3022.105, 3024.434, 3026.545, 3028.604, 3030.685, 3033.145, 3035.395, 3039.605, 3043.215, 3045.475, 3048.725, 3052.535, 3055.345, 3059.354, 3061.546, 3064.624, 3068.324, 3071.226, 3074.315, 3077.704, 3080.646, 3084.245, 3087.586, 3093.344, 3096.276, 3098.345, 3100.435, 3102.585, 3105.995, 3108.035, 3111.434, 3113.799, 3116.645, 3118.785, 3121.865, 3124.405, 3128.394, 3131.196, 3136.895, 3139.225, 3141.725, 3146.884, 3149.092, 3152.004, 3154.065, 3156.117, 3158.17, 3162.035, 3165.674, 3168.494, 3170.944, 3173.675, 3176.325, 3179.275, 3182.594, 3185.005, 3187.425, 3189.987, 3192.266, 3194.345, 3197.734, 3200.024, 3202.764, 3204.885, 3206.894, 3209.284, 3211.195, 3213.365, 3215.254, 3217.605, 3219.94, 3221.994, 3224.044, 3226.047, 3228.555, 3231.031, 3237.895, 3242.186, 3244.367, 3247.015, 3249.205, 3251.424, 3255.019, 3259.834, 3264.019, 3269.019, 3272.654, 3274.782, 3277.194, 3280.114, 3287.354, 3289.944, 3295.134, 3299.295, 3301.765, 3304.564, 3307.096, 3309.876, 3313.424, 3316.854, 3321.944, 3324.287, 3330.159, 3332.736, 3335.176, 3337.534, 3340.894, 3346.262, 3348.534, 3350.587, 3352.679, 3355.013, 3357.004, 3360.524, 3362.644, 3365.574, 3369.785, 3374.484, 3376.534, 3378.742, 3381.795, 3384.614, 3386.804, 3388.829, 3390.804, 3392.764, 3395.261, 3397.364, 3399.414, 3402.104, 3405.894, 3408.004, 3410.354, 3412.614, 3414.724, 3416.829, 3419.474, 3423.444, 3425.673, 3427.865, 3431.124, 3433.754, 3436.322, 3438.4, 3440.424, 3442.767, 3444.958, 3447.074, 3449.183, 3451.884, 3454.054, 3455.984, 3459.416, 3461.674, 3464.285, 3466.323, 3468.444, 3470.624, 3473.624, 3477.233, 3480.518, 3482.734, 3485.454, 3489.944, 3492.164, 3494.983, 3498.462, 3501.073, 3503.774, 3506.804, 3509.954, 3512.105, 3514.297, 3516.304, 3518.236, 3520.174, 3522.176, 3524.185, 3526.851, 3528.994, 3532.434, 3534.465, 3536.524, 3538.9, 3542.014, 3545.704, 3548.593, 3551.671, 3556.944, 3559.044, 3562.824, 3565.319, 3568.213, 3570.275, 3572.634, 3574.804, 3578.025, 3581.923, 3584.914, 3588.403, 3592.974, 3596.236, 3598.374, 3600.573, 3603.14, 3605.793, 3607.926, 3610.404, 3614.107, 3620.113, 3622.183, 3625.104, 3627.734, 3630.601, 3635.413, 3637.6, 3640.217, 3644.526, 3646.903, 3649.093, 3651.823, 3655.263, 3657.404, 3659.604, 3663.043, 3666.686, 3671.413, 3674.043, 3678.814, 3683.045, 3685.754, 3688.303, 3690.453, 3693.304, 3696.744, 3699.823, 3703.654, 3706.383, 3709.823, 3713.633, 3716.493, 3719.298, 3721.614, 3724.115, 3726.35, 3728.504, 3730.918, 3733.384, 3735.428, 3737.954, 3739.813, 3742.043, 3744.084, 3746.014, 3748.673, 3750.893, 3756.054, 3758.232, 3761.473, 3767.693, 3770.033, 3773.064, 3775.593, 3778.403, 3780.813, 3783.163, 3785.474, 3788.693, 3791.194, 3793.643, 3796.933, 3799.143, 3801.033, 3803.053, 3805.036, 3807.355, 3810.847, 3814.103, 3816.383, 3819.973, 3822.963, 3826.156, 3829.123, 3831.323, 3833.303, 3835.363, 3837.385, 3840.433, 3842.624, 3844.963, 3847.313, 3851.69, 3853.906, 3856.043, 3858.115, 3860.513, 3862.662, 3864.794, 3867.193, 3869.282, 3871.293, 3873.703, 3877.073, 3879.262, 3881.304, 3883.492, 3885.793, 3887.683, 3889.783, 3892.129, 3894.363, 3896.882, 3899.512, 3901.394, 3903.463, 3905.905, 3908.325, 3912.1, 3915.243, 3920.232, 3922.443, 3924.753, 3926.883, 3928.908, 3931.114, 3933.137, 3935.451, 3937.633, 3940.073, 3942.582, 3945.803, 3948.723, 3951.812, 3954.722, 3957.012, 3962.123, 3967.082, 3969.532, 3971.643, 3973.752, 3975.872, 3977.823, 3979.741, 3981.843, 3983.743, 3985.742, 3987.792, 3990.143, 3992.363, 3996.513, 3998.923, 4001.254, 4004.142, 4007.802, 4010.022, 4013.863, 4016.164, 4018.466, 4022.034, 4024.992, 4027.455, 4029.983, 4032.173, 4034.873, 4037.072, 4039.912, 4041.382, 4046.65, 4048.852, 4051.061, 4055.412, 4058.712, 4061.103, 4065.413, 4069.303, 4077.843, 4081.982, 4085.743, 4087.843, 4090.472, 4092.712, 4095.963, 4099.523, 4102.613, 4105.174, 4107.834, 4110.542, 4115.033, 4118.39, 4122.885, 4125.394, 4128.511, 4131.462, 4135.693, 4137.957, 4140.193, 4142.532, 4145.001, 4148.232, 4151.301, 4155.131, 4157.923, 4160.027, 4162.256, 4164.562, 4167.542, 4172.122, 4174.282, 4177.522, 4179.892, 4183.582, 4188.631, 4191.131, 4195.782, 4198.012, 4200.732, 4202.912, 4205.185, 4207.242, 4209.356, 4211.421, 4214.052, 4216.182, 4218.542, 4221.113, 4224.424, 4226.682, 4229.971, 4235.592, 4238.602, 4240.743, 4242.822, 4245.063, 4249.153, 4253.016, 4255.407, 4257.732, 4259.852, 4262.562, 4264.812, 4268.282, 4271.342, 4274.362, 4279.512, 4284.012, 4286.252, 4288.592, 4291.163, 4293.794, 4295.934, 4298.182, 4300.961, 4306.692, 4309.132, 4312.732, 4317.283, 4320.041, 4322.351, 4324.905, 4328.532, 4333.891, 4336.082, 4338.603, 4341.891, 4346.95, 4349.392, 4351.452, 4353.291, 4355.544, 4357.645, 4360.022, 4363.552, 4368.382, 4370.821, 4373.711, 4376.041, 4378.112, 4380.162, 4382.394, 4384.972, 4387.871, 4392.442, 4395.131, 4400.423, 4401.482], + type: 'category', + data: time, axisLabel: { show: false, }, - axisLine: { - show: false, - }, axisTick: { show: false }, + axisLine: { + show: false + } }, yAxis: { type: 'value', + splitLine: { + lineStyle: { + color: '#aaa' + } + }, axisLabel: { inside: false } }, tooltip: { - show: true, - valueFormatter: (value) => 'Wort ' + new Intl.NumberFormat('de-CH').format(value) + trigger: 'axis', + valueFormatter: (value) => 'Gesprochene Worte ' + new Intl.NumberFormat('de-CH').format(value) }, series: [ { - data: [0, 5, 17, 28, 37, 46, 50, 55, 59, 62, 68, 72, 82, 87, 93, 97, 105, 109, 115, 122, 127, 136, 142, 148, 155, 164, 169, 177, 184, 192, 194, 198, 208, 215, 223, 229, 240, 249, 258, 264, 274, 281, 288, 293, 301, 307, 315, 323, 329, 342, 352, 358, 363, 374, 384, 395, 402, 406, 412, 416, 423, 429, 435, 444, 450, 457, 465, 473, 476, 479, 488, 492, 499, 505, 513, 515, 525, 533, 541, 547, 555, 563, 569, 578, 583, 588, 594, 602, 605, 613, 623, 629, 635, 641, 648, 656, 666, 674, 681, 690, 699, 708, 717, 725, 733, 736, 742, 752, 756, 764, 768, 775, 780, 785, 792, 800, 809, 815, 824, 829, 836, 846, 853, 864, 872, 875, 882, 889, 892, 903, 909, 916, 921, 932, 940, 945, 958, 961, 970, 977, 984, 992, 997, 1004, 1014, 1021, 1028, 1037, 1040, 1047, 1055, 1063, 1067, 1074, 1084, 1093, 1102, 1107, 1113, 1118, 1129, 1134, 1141, 1146, 1157, 1161, 1166, 1174, 1179, 1185, 1192, 1197, 1206, 1212, 1220, 1228, 1233, 1241, 1246, 1259, 1271, 1279, 1285, 1293, 1294, 1304, 1310, 1315, 1323, 1334, 1342, 1350, 1355, 1365, 1372, 1375, 1383, 1392, 1398, 1408, 1413, 1420, 1427, 1437, 1447, 1452, 1462, 1468, 1475, 1480, 1492, 1496, 1501, 1507, 1518, 1530, 1535, 1539, 1548, 1554, 1567, 1570, 1579, 1585, 1597, 1606, 1610, 1618, 1623, 1626, 1633, 1643, 1649, 1656, 1663, 1673, 1679, 1684, 1693, 1699, 1704, 1715, 1718, 1729, 1735, 1744, 1750, 1758, 1764, 1768, 1777, 1785, 1792, 1803, 1815, 1820, 1827, 1835, 1842, 1853, 1859, 1869, 1874, 1885, 1892, 1896, 1904, 1913, 1919, 1930, 1935, 1948, 1956, 1960, 1967, 1976, 1983, 1992, 1995, 2006, 2011, 2016, 2024, 2035, 2041, 2047, 2056, 2061, 2068, 2077, 2082, 2090, 2093, 2104, 2113, 2116, 2127, 2134, 2140, 2149, 2155, 2163, 2170, 2176, 2185, 2191, 2199, 2209, 2216, 2221, 2227, 2232, 2237, 2245, 2255, 2261, 2267, 2274, 2282, 2287, 2295, 2304, 2311, 2322, 2332, 2337, 2344, 2348, 2354, 2362, 2369, 2377, 2381, 2391, 2404, 2411, 2419, 2426, 2433, 2444, 2456, 2461, 2468, 2476, 2479, 2484, 2487, 2496, 2507, 2516, 2523, 2528, 2539, 2545, 2550, 2557, 2567, 2572, 2581, 2588, 2594, 2601, 2606, 2613, 2618, 2624, 2630, 2639, 2646, 2653, 2656, 2661, 2667, 2672, 2682, 2685, 2695, 2705, 2710, 2717, 2726, 2728, 2736, 2741, 2747, 2755, 2760, 2769, 2775, 2782, 2790, 2792, 2802, 2807, 2817, 2824, 2827, 2833, 2839, 2843, 2852, 2862, 2866, 2875, 2887, 2892, 2901, 2907, 2912, 2921, 2931, 2936, 2944, 2949, 2957, 2961, 2969, 2974, 2984, 2991, 2997, 3004, 3012, 3020, 3026, 3037, 3048, 3055, 3061, 3067, 3074, 3079, 3084, 3093, 3107, 3110, 3118, 3124, 3135, 3141, 3147, 3157, 3161, 3169, 3178, 3186, 3195, 3202, 3208, 3220, 3231, 3236, 3244, 3257, 3266, 3277, 3284, 3294, 3299, 3304, 3315, 3323, 3328, 3338, 3348, 3353, 3364, 3372, 3378, 3384, 3390, 3399, 3409, 3417, 3425, 3436, 3444, 3451, 3461, 3469, 3476, 3480, 3490, 3496, 3501, 3510, 3518, 3521, 3529, 3537, 3545, 3553, 3564, 3570, 3578, 3585, 3592, 3596, 3606, 3614, 3622, 3631, 3639, 3647, 3654, 3665, 3670, 3681, 3688, 3694, 3705, 3711, 3721, 3728, 3733, 3743, 3749, 3751, 3763, 3767, 3774, 3781, 3785, 3794, 3801, 3805, 3809, 3813, 3821, 3830, 3839, 3849, 3854, 3864, 3867, 3875, 3880, 3889, 3895, 3903, 3909, 3922, 3926, 3933, 3945, 3956, 3964, 3973, 3978, 3987, 3997, 4004, 4009, 4018, 4024, 4034, 4045, 4053, 4061, 4066, 4074, 4080, 4087, 4092, 4103, 4112, 4115, 4122, 4128, 4137, 4141, 4153, 4160, 4164, 4172, 4181, 4188, 4195, 4202, 4211, 4222, 4233, 4238, 4247, 4253, 4256, 4259, 4270, 4282, 4288, 4296, 4304, 4317, 4327, 4331, 4338, 4344, 4350, 4357, 4363, 4368, 4371, 4383, 4392, 4400, 4406, 4416, 4422, 4432, 4440, 4451, 4458, 4467, 4471, 4478, 4485, 4493, 4496, 4508, 4512, 4519, 4529, 4534, 4540, 4549, 4556, 4559, 4566, 4573, 4578, 4589, 4596, 4604, 4611, 4620, 4630, 4642, 4651, 4660, 4662, 4669, 4675, 4680, 4686, 4692, 4696, 4703, 4708, 4717, 4720, 4729, 4741, 4749, 4759, 4764, 4771, 4779, 4788, 4790, 4795, 4804, 4811, 4814, 4822, 4832, 4836, 4845, 4853, 4862, 4870, 4877, 4882, 4889, 4891, 4901, 4908, 4918, 4927, 4933, 4940, 4949, 4953, 4960, 4968, 4973, 4982, 4992, 5000, 5006, 5014, 5020, 5030, 5034, 5042, 5053, 5064, 5070, 5080, 5088, 5094, 5099, 5106, 5112, 5122, 5125, 5132, 5135, 5144, 5149, 5155, 5161, 5170, 5182, 5188, 5193, 5207, 5213, 5223, 5230, 5240, 5252, 5255, 5264, 5270, 5276, 5284, 5292, 5297, 5306, 5311, 5317, 5322, 5324, 5333, 5341, 5351, 5359, 5368, 5374, 5380, 5387, 5391, 5395, 5407, 5409, 5415, 5423, 5433, 5441, 5448, 5460, 5465, 5470, 5473, 5477, 5482, 5492, 5497, 5503, 5513, 5523, 5530, 5541, 5549, 5553, 5562, 5566, 5574, 5579, 5587, 5593, 5602, 5611, 5621, 5629, 5636, 5644, 5650, 5658, 5667, 5679, 5686, 5690, 5699, 5708, 5714, 5723, 5732, 5741, 5749, 5755, 5762, 5774, 5784, 5791, 5798, 5807, 5813, 5822, 5827, 5838, 5845, 5848, 5855, 5863, 5869, 5877, 5880, 5884, 5892, 5900, 5904, 5909, 5920, 5925, 5933, 5943, 5947, 5956, 5968, 5974, 5977, 5984, 5989, 5994, 6002, 6011, 6018, 6025, 6028, 6039, 6048, 6053, 6059, 6065, 6075, 6082, 6089, 6094, 6099, 6104, 6111, 6117, 6127, 6132, 6140, 6148, 6156, 6163, 6171, 6174, 6179, 6186, 6194, 6203, 6213, 6220, 6227, 6232, 6239, 6248, 6254, 6262, 6270, 6275, 6283, 6291, 6295, 6304, 6311, 6318, 6324, 6332, 6344, 6352, 6362, 6370, 6377, 6384, 6393, 6400, 6408, 6418, 6424, 6431, 6439, 6443, 6451, 6455, 6463, 6470, 6472, 6475, 6485, 6492, 6501, 6511, 6520, 6528, 6543, 6549, 6557, 6566, 6573, 6581, 6593, 6599, 6604, 6611, 6614, 6622, 6632, 6644, 6648, 6657, 6662, 6673, 6678, 6686, 6695, 6699, 6710, 6717, 6731, 6738, 6747, 6752, 6761, 6771, 6780, 6788, 6792, 6801, 6805, 6812, 6820, 6830, 6835, 6843, 6848, 6859, 6864, 6875, 6884, 6894, 6901, 6905, 6913, 6923, 6931, 6942, 6947, 6952, 6957, 6966, 6973, 6980, 6989, 6995, 7004, 7014, 7019, 7026, 7033, 7039, 7047, 7051, 7059, 7064, 7073, 7077, 7085, 7094, 7100, 7108, 7117, 7124, 7135, 7140, 7149, 7161, 7169, 7174, 7180, 7185, 7195, 7203, 7210, 7215, 7222, 7232, 7239, 7247, 7255, 7265, 7272, 7281, 7290, 7294, 7304, 7309, 7315, 7322, 7327, 7337, 7347, 7354, 7362, 7369, 7377, 7384, 7391, 7403, 7412, 7416, 7420, 7424, 7431, 7437, 7446, 7451, 7457, 7465, 7472, 7479, 7487, 7496, 7502, 7512, 7521, 7534, 7539, 7548, 7555, 7558, 7564, 7572, 7584, 7588, 7593, 7601, 7613, 7626, 7629, 7638, 7646, 7655, 7660, 7664, 7670, 7676, 7685, 7692, 7696, 7707, 7714, 7723, 7729, 7740, 7749, 7756, 7762, 7771, 7779, 7786, 7797, 7806, 7813, 7819, 7825, 7830, 7836, 7844, 7853, 7860, 7867, 7869, 7876, 7881, 7889, 7896, 7906, 7915, 7919, 7925, 7929, 7934, 7938, 7945, 7952, 7955, 7963, 7968, 7975, 7979, 7987, 7997, 8003, 8009, 8015, 8019, 8023, 8033, 8037, 8045, 8057, 8064, 8069, 8076, 8083, 8094, 8098, 8106, 8116, 8121, 8129, 8131, 8135, 8145, 8150, 8152, 8159, 8167, 8175, 8181, 8189, 8199, 8207, 8211, 8220, 8226, 8235, 8240, 8248, 8259, 8268, 8276, 8284, 8291, 8299, 8302, 8312, 8318, 8325, 8330, 8336, 8346, 8354, 8362, 8372, 8377, 8384, 8396, 8402, 8411, 8418, 8429, 8432, 8437, 8450, 8456, 8466, 8471, 8479, 8485, 8494, 8500, 8511, 8517, 8529, 8534, 8542, 8547, 8561, 8571, 8581, 8587, 8600, 8604, 8613, 8619, 8629, 8632, 8642, 8651, 8661, 8669, 8675, 8686, 8698, 8709, 8711, 8716, 8723, 8727, 8733, 8740, 8751, 8762, 8766, 8777, 8782, 8785, 8788, 8795, 8801, 8807, 8812, 8822, 8828, 8833, 8839, 8846, 8850, 8857, 8867, 8877, 8885, 8891, 8901, 8907, 8914, 8923, 8934, 8940, 8952, 8959, 8965, 8971, 8980, 8985, 8993, 9005, 9013, 9017, 9026, 9037, 9043, 9055, 9061, 9071, 9076, 9083, 9095, 9100, 9110, 9113, 9123, 9130, 9133, 9142, 9146, 9153, 9159, 9163, 9169, 9177, 9186, 9194, 9206, 9213, 9219, 9223, 9231, 9239, 9250, 9259, 9267, 9272, 9283, 9289, 9297, 9308, 9312, 9316, 9321, 9330, 9338, 9344, 9351, 9358, 9362, 9367, 9372, 9378, 9385, 9390, 9398, 9402, 9410, 9417, 9426, 9430, 9437, 9443, 9452, 9457, 9465, 9470, 9476, 9486, 9496, 9498, 9504, 9512, 9517, 9526, 9533, 9541, 9548, 9556, 9566, 9571, 9580, 9587, 9595, 9602, 9607, 9614, 9622, 9629, 9639, 9651, 9659, 9664, 9674, 9682, 9688, 9694, 9696, 9699, 9705, 9711, 9716, 9722, 9730, 9739, 9749, 9758, 9766, 9772, 9782, 9791, 9794, 9805, 9809, 9817, 9826, 9832, 9840, 9850, 9857, 9866, 9872, 9877, 9881, 9888, 9893, 9900, 9908, 9918, 9927, 9937, 9949, 9960, 9970, 9976, 9981, 9992, 9995, 10002, 10013, 10024, 10032, 10037, 10050, 10060, 10068, 10079, 10087, 10093, 10098, 10104, 10111, 10116, 10126, 10134, 10141, 10151, 10160, 10165, 10171, 10176, 10185, 10197, 10206, 10214, 10224, 10233, 10239, 10248, 10256, 10267, 10272, 10278, 10283, 10291, 10298, 10306, 10313, 10324, 10325, 10335, 10341, 10351, 10355, 10366, 10378, 10388, 10394, 10397, 10403, 10412, 10420, 10425, 10434, 10442, 10454, 10463, 10472, 10477, 10483, 10493, 10505, 10516, 10528, 10530, 10542, 10549, 10557, 10569, 10580, 10585, 10593, 10602, 10610, 10616, 10622, 10634, 10640, 10648, 10652, 10662, 10673, 10683, 10688, 10692, 10700, 10704, 10714, 10725, 10730, 10741, 10748, 10758, 10763, 10770, 10774, 10781, 10794, 10803, 10813, 10826, 10827], + data: words, type: 'line', + showSymbol: false, lineStyle: { color: '#fff', }, } ] - } -; + }; -option && myChart.setOption(option); +chartWordCount.setOption(chartWordCountOptions); -var chartDom2 = document.querySelectorAll('.track')[1].querySelector('.track-viz'); -var myChart2 = echarts.init(chartDom2); -var option2; - -option2 = { +// Chart sentiments over time +const sentimentsTrack = document.getElementById('sentiment-track'); +const chartSentiments = echarts.init(sentimentsTrack); +const chartSentimentsOptions = { grid: { top: 0, bottom: 0, @@ -104,10 +110,7 @@ option2 = { ] }; -option2 && myChart2.setOption(option2); - - - +chartSentiments.setOption(chartSentimentsOptions); // VIDEO @@ -117,9 +120,6 @@ const video = document.getElementById('video'); gsap.registerPlugin(Draggable); - - - const player = new Pillarbox('my-player', { controls: false, muted: true, diff --git a/VANA-php/resources/views/detail.blade.php b/VANA-php/resources/views/detail.blade.php index dd406ea..de5c735 100644 --- a/VANA-php/resources/views/detail.blade.php +++ b/VANA-php/resources/views/detail.blade.php @@ -29,9 +29,8 @@ Transkript
-
@@ -53,18 +52,19 @@ Transkript (Inhalt)
-
    - @foreach($subtitles['cues'] as $cue) -
  1. -
    - {{ gmdate('H:i:s', $cue['start'])}} -
    -
    - {!! $cue['text'] !!} -
    -
  2. - @endforeach -
+
    + @foreach($subtitles['cues'] as $cue) +
  1. +
    + {{ + gmdate('H:i:s', $cue['start'])}} +
    +
    + {!! $cue['text'] !!} +
    +
  2. + @endforeach +
diff --git a/VANA-php/routes/web.php b/VANA-php/routes/web.php index 89fbffd..cb8eb0c 100644 --- a/VANA-php/routes/web.php +++ b/VANA-php/routes/web.php @@ -26,10 +26,11 @@ Route::get('/detail/{id}', function(int $id) { $mediacomposition = json_decode($ep->mediacomposition, 1); $durationSteps = $mediacomposition['chapterList'][0]['duration'] / 1000 / 10; + $subdata = json_decode($ep->subtitle_data, 1); + $parser = new Podlove\Webvtt\Parser(); $subtitles = $parser->parse($subtitles); - //dump($subtitles); - return view('detail', ['title' => $title, 'subtitles' => $subtitles, 'mediacomposition' => $mediacomposition, 'durationSteps' => $durationSteps, 'dom_color' => $ep->viz_data]); + return view('detail', ['title' => $title, 'subtitles' => $subtitles, 'mediacomposition' => $mediacomposition, 'durationSteps' => $durationSteps, 'dom_color' => $ep->viz_data, 'subdata' => $subdata]); }); diff --git a/VANA-python/database/src/database/__pycache__/queries.cpython-311.pyc b/VANA-python/database/src/database/__pycache__/queries.cpython-311.pyc index 6903490..9a534df 100644 Binary files a/VANA-python/database/src/database/__pycache__/queries.cpython-311.pyc and b/VANA-python/database/src/database/__pycache__/queries.cpython-311.pyc differ diff --git a/VANA-python/database/src/database/__pycache__/queries.cpython-313.pyc b/VANA-python/database/src/database/__pycache__/queries.cpython-313.pyc index 9404472..85a9978 100644 Binary files a/VANA-python/database/src/database/__pycache__/queries.cpython-313.pyc and b/VANA-python/database/src/database/__pycache__/queries.cpython-313.pyc differ diff --git a/VANA-python/database/src/database/queries.py b/VANA-python/database/src/database/queries.py index e241562..2b517b6 100644 --- a/VANA-python/database/src/database/queries.py +++ b/VANA-python/database/src/database/queries.py @@ -4,14 +4,16 @@ con = sqlite3.connect("/home/gio/Code/VANA/database.sqlite") cur = con.cursor() def get_subtitle(id): - row = cur.execute("SELECT subtitles FROM episodes WHERE ?", [id]) + row = cur.execute("SELECT subtitles FROM episodes WHERE id = ?", [id]) + subtitles = row.fetchone() con.close() - return row.fetchone() + return subtitles def get_mediacomposition(id): row = cur.execute("SELECT mediacomposition FROM episodes WHERE id = ?", [id]) + mediacomp = row.fetchone() con.close() - return row.fetchone() + return mediacomp def get_podcast_url(id): row = cur.execute("SELECT json_extract(mediacomposition, '$.chapterList[0].podcastHdUrl') FROM episodes WHERE id = ?", [id]) @@ -20,7 +22,12 @@ def get_podcast_url(id): return podcast_url def save_data_viz(id, data): - row = cur.execute("UPDATE episodes SET viz_data = ? WHERE id = ?", [data, id]) + cur.execute("UPDATE episodes SET viz_data = ? WHERE id = ?", [data, id]) + con.commit() + con.close() + +def save_subtitle_data(id, data): + cur.execute("UPDATE episodes SET subtitle_data = ? WHERE id = ?", [data, id]) con.commit() con.close() diff --git a/VANA-python/normalize_subtitles/src/normalize_subtitles/__pycache__/normalize_vtt.cpython-311.pyc b/VANA-python/normalize_subtitles/src/normalize_subtitles/__pycache__/normalize_vtt.cpython-311.pyc index 163e73b..2d49150 100644 Binary files a/VANA-python/normalize_subtitles/src/normalize_subtitles/__pycache__/normalize_vtt.cpython-311.pyc and b/VANA-python/normalize_subtitles/src/normalize_subtitles/__pycache__/normalize_vtt.cpython-311.pyc differ diff --git a/VANA-python/normalize_subtitles/src/normalize_subtitles/count_words.py b/VANA-python/normalize_subtitles/src/normalize_subtitles/count_words.py new file mode 100644 index 0000000..ff9ec4e --- /dev/null +++ b/VANA-python/normalize_subtitles/src/normalize_subtitles/count_words.py @@ -0,0 +1,33 @@ +#!/usr/bin/env python3 + +import argparse +import json +from pathlib import Path + +import polars as pl +from database import queries + + +def count_words(ep): + data_folder = str(Path(__file__).parents[4]) + "/data/" + ep + '/normalized_vtt.csv' + df = pl.read_csv(data_folder) + + time = [0] + word_count = [0] + + for i, row in enumerate(df["sentences"]): + time.append(round(df["end"][i])) + word_count.append(word_count[i] + len(df["sentences"][i].split(" "))) + + return json.dumps({"time" : time, "word_count" : word_count }) + + +# CLI +parser = argparse.ArgumentParser( + prog="Count Words", description="Counts the words in the subtitle" +) + +parser.add_argument("--episode", "-ep") +args = parser.parse_args() + +queries.save_subtitle_data(args.episode, count_words(args.episode)) diff --git a/VANA-python/normalize_subtitles/src/normalize_subtitles/normalize_vtt.py b/VANA-python/normalize_subtitles/src/normalize_subtitles/normalize_vtt.py index 5f4b819..abdbb61 100755 --- a/VANA-python/normalize_subtitles/src/normalize_subtitles/normalize_vtt.py +++ b/VANA-python/normalize_subtitles/src/normalize_subtitles/normalize_vtt.py @@ -1,10 +1,12 @@ import re import textwrap +from pathlib import Path import polars as pl import spacy import timecode as tc import webvtt +from database import queries class NormalizeVtt: @@ -13,7 +15,10 @@ class NormalizeVtt: self.nlp = spacy.load("de_core_news_sm") # Der Timecode der Untertitel wird angepasst, dass jeder Block einem Satz entspricht. - def sentencize(self, vtt): + def sentencize(self, ep): + + vtt = queries.get_subtitle(ep)[0] + captions = webvtt.from_string(textwrap.dedent(vtt).strip()) sentences = [] @@ -79,4 +84,7 @@ class NormalizeVtt: text = text + " " + token.text d = {"sentences": sentences, "start": times_start, "end": times_end} df = pl.DataFrame(data=d) - return df.write_csv() + + data_folder = str(Path(__file__).parents[4]) + "/data/" + ep + '/normalized_vtt.csv' + + return df.write_csv(data_folder) diff --git a/VANA-python/normalize_subtitles/src/normalize_subtitles/subtitles-processing.py b/VANA-python/normalize_subtitles/src/normalize_subtitles/subtitles-processing.py index 4e0c094..a6bf561 100755 --- a/VANA-python/normalize_subtitles/src/normalize_subtitles/subtitles-processing.py +++ b/VANA-python/normalize_subtitles/src/normalize_subtitles/subtitles-processing.py @@ -3,7 +3,6 @@ import argparse import normalize_vtt as nv -from database import queries normalizer = nv.NormalizeVtt() @@ -19,5 +18,5 @@ args = parser.parse_args() match args.action: case "normalize": - normalizer.sentencize(vtt=queries.get_subtitle(args.episode)[0]) + normalizer.sentencize(args.episode) print("Normalized.") diff --git a/VANA-python/video_colors/README.md b/VANA-python/video_colors/README.md index 83e85b4..2f255d5 100644 --- a/VANA-python/video_colors/README.md +++ b/VANA-python/video_colors/README.md @@ -1,6 +1,7 @@ # video_colors.py Python script to extract the dominant colors of an image and generate a SVG containing them. -The script expects a folder with all the extracted frames in ../../data// +The script expects a folder with all the extracted frames in `../../data//` + ```bash python src/dominant_colors.py -ep ``` diff --git a/VANA-python/video_processing/README.md b/VANA-python/video_processing/README.md index 650b3ef..bf22599 100644 --- a/VANA-python/video_processing/README.md +++ b/VANA-python/video_processing/README.md @@ -1,6 +1,6 @@ # video_processing.py Python script to download episodes and extract the frames. -The extracted frames are saved to ../../data// +The extracted frames are saved to `../../data//` ```bash python src/video_processing.py -a <"download"|"extract_frames"> -ep ``` diff --git a/VANA-python/video_processing/src/test.py b/VANA-python/video_processing/src/test.py deleted file mode 100644 index 4b09f8d..0000000 --- a/VANA-python/video_processing/src/test.py +++ /dev/null @@ -1,4 +0,0 @@ -from pathlib import Path - -data_folder = str(Path(__file__).parents[3]) -print(data_folder) diff --git a/database.sqlite b/database.sqlite index 1f205d1..38aa83b 100644 Binary files a/database.sqlite and b/database.sqlite differ