From 1c775277ff233b3a86968cce0ee3c1fb0abe7d80 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Michal=20Ka=C5=A1p=C3=A1rek?= Date: Thu, 21 Nov 2024 11:09:09 +0100 Subject: [PATCH] =?UTF-8?q?arearangechart=20jak=C5=BE=20tak=C5=BE=20funguj?= =?UTF-8?q?e?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- 111_zahranici.ipynb | 1821 +++++++++++++++++++++++------ grafy/pokus.html | 2658 ++++++++++++++++++++++++++++++++++++++----- 2 files changed, 3864 insertions(+), 615 deletions(-) diff --git a/111_zahranici.ipynb b/111_zahranici.ipynb index 4867df9..283c9b4 100644 --- a/111_zahranici.ipynb +++ b/111_zahranici.ipynb @@ -3123,6 +3123,136 @@ "df[df['kam'].str.contains('Bru')].groupby([\"prodejce\",'odkud']).size().nlargest()" ] }, + { + "cell_type": "code", + "execution_count": 619, + "id": "cbb3b914-c733-4d93-a1ca-5388b420d9d5", + "metadata": {}, + "outputs": [ + { + "name": "stderr", + "output_type": "stream", + "text": [ + "C:\\Users\\micha\\AppData\\Local\\Temp\\ipykernel_17028\\1416979180.py:1: FutureWarning: The default of observed=False is deprecated and will be changed to True in a future version of pandas. Pass observed=False to retain current behavior or observed=True to adopt the future default and silence this warning.\n", + " df[df['odkud'].str.contains('Prah')].groupby([\"prodejce\",'kam']).size().nlargest(100).dropna()\n" + ] + }, + { + "data": { + "text/plain": [ + "prodejce kam \n", + "ČD Brno hl.n. 56255\n", + " Ostrava hl.n. 33292\n", + "RJ Brno 16457\n", + "ČD Bratislava hl.st. 11438\n", + " Wien Hbf 10433\n", + " Warszawa Centralna 8884\n", + " Bruxelles-Midi 8733\n", + "RJ Ostrava 8397\n", + "ČD Budapest-Nyugati pu 7936\n", + " Berlin Hbf (tief) 7828\n", + " Budapest-Kelenföld 6258\n", + " Ljubljana 5817\n", + "LE Ostrava hl.n. 5403\n", + " Ostrava-Svinov 5403\n", + "ARR České Budějovice 5212\n", + "ČD Bern 4184\n", + "ARR Tanvald 3590\n", + "ČD Zagreb Glavni kolodvor 2884\n", + "RJ Budapešť 2686\n", + " Bratislava 2117\n", + "ČD Krakow Glowny 1727\n", + "RJ Vídeň 1564\n", + "ČD Bratislava-Petržalka 1548\n", + " Wien Franz-Josefs-Bahnhof 1470\n", + " Amsterdam Centraal 1179\n", + " Berlin Hbf 1176\n", + "RJ Košice 1092\n", + "ČD Ostrava-Svinov 1030\n", + " Flughafen Wien 559\n", + " Berlin Südkreuz 486\n", + "RJ Čop 364\n", + " Krakov 326\n", + "ČD Plzeň hl.n. 261\n", + "LE Kraków Główny 188\n", + "ČD Amsterdam Zuid 166\n", + " Berlin Ostbahnhof 107\n", + " Warszawa Wschodnia 92\n", + " Wien Stadlau 87\n", + " Wien Stadlau Frachtenbahnhof 81\n", + " Bruxelles-Central 76\n", + " Berlin Gesundbrunnen 63\n", + " Berlin-Lichtenberg 58\n", + " Budapest-Deli pu 53\n", + " Krakow Business Park 30\n", + " Krakow Mydlniki 30\n", + " Berlin Betriebsbf Schöneweide 22\n", + " Berlin Zoologischer Garten 12\n", + " Berlin-Lichterfelde Ost 11\n", + " Amsterdam Bijlmer ArenA 10\n", + " Berlin-Grünau 4\n", + "ARR Amsterdam Bijlmer ArenA 0\n", + " Amsterdam Centraal 0\n", + " Amsterdam Zuid 0\n", + " Berlin Betriebsbf Schöneweide 0\n", + " Berlin Gesundbrunnen 0\n", + " Berlin Hbf 0\n", + " Berlin Hbf (tief) 0\n", + " Berlin Ostbahnhof 0\n", + " Berlin Südkreuz 0\n", + " Berlin Zoologischer Garten 0\n", + " Berlin-Grünau 0\n", + " Berlin-Lichtenberg 0\n", + " Berlin-Lichterfelde Ost 0\n", + " Bern 0\n", + " Bratislava 0\n", + " Bratislava hl.st. 0\n", + " Bratislava-Petržalka 0\n", + " Brno 0\n", + " Brno hl.n. 0\n", + " Bruxelles-Central 0\n", + " Bruxelles-Midi 0\n", + " Budapest-Deli pu 0\n", + " Budapest-Kelenföld 0\n", + " Budapest-Nyugati pu 0\n", + " Budapešť 0\n", + " Dresden Hbf 0\n", + " Dresden-Neustadt 0\n", + " Flughafen BER - Terminal 5 (Schönefeld) 0\n", + " Flughafen Wien 0\n", + " Gdansk Glowny 0\n", + " Hamburg Hbf 0\n", + " Hamburg-Harburg 0\n", + " Jihlava 0\n", + " Karlovy Vary 0\n", + " Karlovy Vary dolní n. 0\n", + " Karlovy Vary, , terminál 0\n", + " Košice 0\n", + " Krakov 0\n", + " Krakow Business Park 0\n", + " Krakow Glowny 0\n", + " Krakow Mydlniki 0\n", + " Kraków Główny 0\n", + " Liberec 0\n", + " Ljubljana 0\n", + " Olomouc 0\n", + " Olomouc hl.n. 0\n", + " Ostrava 0\n", + " Ostrava hl.n. 0\n", + " Ostrava-Svinov 0\n", + " Pardubice hl.n. 0\n", + "dtype: int64" + ] + }, + "execution_count": 619, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "df[df['odkud'].str.contains('Prah')].groupby([\"prodejce\",'kam']).size().nlargest(100).dropna()" + ] + }, { "cell_type": "code", "execution_count": 207, @@ -3133,372 +3263,1213 @@ "name": "stdout", "output_type": "stream", "text": [ - "Help on function irozhlas_graf in module tm3k.tm3k_utils:\n", - "\n", - "irozhlas_graf(carovy=[], sloupcovy=[], vodorovny=[], procenta=[], skryte=[], barvy=[], histogram=False, max_procenta=100, target='', titulek='', podtitulek='', naproti=[], osay=' ', osay2=' ', osaymin=None, osaymax=None, kredity=['zdroj dat a autorstvo', 'url odkazu'], zaokrouhleni=1, prvni=True, skladany=False, naopak=False, vzhurunohama=False, skrytnuly=False)\n", - " Funkce vygeneruje HighCharts graf z pandas Series (jedné nebo více).\n", - "\n", - " iROZHLAS-friendly barvy:\n", - " - \"#b2e061\" světle zelená\n", - " - \"#7eb0d5\" světle modrá\n", - " - \"#fd7f6f\" světle červená\n", - " - \"#bd7ebe\" světle fialová\n", - " - \"#ffb55a\" oranžová\n", - " - \"#ffee65\" žlutá\n", - " - \"#beb9db\" levandulová\n", - " - \"#fdcce5\" skoro černá\n", - " - \"#8bd3c7\" světle tyrkysová\n", - "\n" + "Help on function irozhlas_graf in module tm3k.tm3k_utils:\n", + "\n", + "irozhlas_graf(carovy=[], sloupcovy=[], vodorovny=[], procenta=[], skryte=[], barvy=[], histogram=False, max_procenta=100, target='', titulek='', podtitulek='', naproti=[], osay=' ', osay2=' ', osaymin=None, osaymax=None, kredity=['zdroj dat a autorstvo', 'url odkazu'], zaokrouhleni=1, prvni=True, skladany=False, naopak=False, vzhurunohama=False, skrytnuly=False)\n", + " Funkce vygeneruje HighCharts graf z pandas Series (jedné nebo více).\n", + "\n", + " iROZHLAS-friendly barvy:\n", + " - \"#b2e061\" světle zelená\n", + " - \"#7eb0d5\" světle modrá\n", + " - \"#fd7f6f\" světle červená\n", + " - \"#bd7ebe\" světle fialová\n", + " - \"#ffb55a\" oranžová\n", + " - \"#ffee65\" žlutá\n", + " - \"#beb9db\" levandulová\n", + " - \"#fdcce5\" skoro černá\n", + " - \"#8bd3c7\" světle tyrkysová\n", + "\n" + ] + } + ], + "source": [ + "help(irozhlas_graf)" + ] + }, + { + "cell_type": "code", + "execution_count": 323, + "id": "c8983054-07a9-4fc7-b93e-881863c5b1ac", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Graf uložen.\n" + ] + } + ], + "source": [ + "irozhlas_graf(carovy=[cd_varsava, rj_cop, cd_budapest, le_kosice, rj_bratislava, cd_berlin, cd_bratislava, cd_viden, rj_viden, le_krakov], skryte=[rj_cop, le_kosice, le_krakov, cd_budapest], target='ceny_mezinarodni', titulek='Střední ceny jízdného do zahraničí v závislosti na předstihu nákupu', podtitulek='Východní zobrazení vybírá jízdenky do hlavních měst okolních zemí, další spoje lze rozkliknout níže.', kredity=['Zdroj dat: e-shopy dopravců v listopadu 2024. Vizualizace: iROZHLAS.cz','https://www.irozhlas.cz/zpravy-tag/datova-zurnalistika'])" + ] + }, + { + "cell_type": "code", + "execution_count": 905, + "id": "045403f7-9dc5-4067-a791-c39c7aeb7d03", + "metadata": {}, + "outputs": [ + { + "name": "stderr", + "output_type": "stream", + "text": [ + "C:\\Users\\micha\\AppData\\Local\\Temp\\ipykernel_17028\\720447373.py:1: FutureWarning: The default of observed=False is deprecated and will be changed to True in a future version of pandas. Pass observed=False to retain current behavior or observed=True to adopt the future default and silence this warning.\n", + " df.groupby(['prodejce','odkud','kam']).size().nlargest(100)\n" + ] + }, + { + "data": { + "text/plain": [ + "prodejce odkud kam \n", + "ČD Praha hl.n. Brno hl.n. 54758\n", + " Brno hl.n. Praha hl.n. 52897\n", + " Praha hl.n. Ostrava hl.n. 31760\n", + " Ostrava hl.n. Praha hl.n. 25799\n", + "RJ Brno Praha 18129\n", + " Praha Brno 16457\n", + " Ostrava Praha 10865\n", + "ČD Praha hl.n. Bratislava hl.st. 10357\n", + " Wien Hbf 9751\n", + "ARR Liberec Pardubice hl.n. 9135\n", + " Pardubice hl.n. Liberec 8985\n", + "ČD Brno hl.n. Hamburg Hbf 8784\n", + " Praha hl.n. Warszawa Centralna 8628\n", + "RJ Praha Ostrava 8397\n", + "ČD Praha hl.n. Bruxelles-Midi 7961\n", + " Berlin Hbf (tief) Praha hl.n. 7732\n", + " Bratislava hl.st. Praha hl.n. 7683\n", + " Praha hl.n. Budapest-Nyugati pu 7149\n", + " Berlin Hbf (tief) 7111\n", + " Ústí n.L.hl.n. Dresden Hbf 7083\n", + " Olomouc hl.n. Przemysl Gl. 6685\n", + " Karlovy Vary Ostrava hl.n. 6499\n", + " Praha hl.n. Budapest-Kelenföld 6209\n", + " Wien Hbf Praha hl.n. 6031\n", + "ARR Liberec Ústí nad Labem hlavní nádraží 5350\n", + "ČD Brno hl.n. Ljubljana 5337\n", + " Praha hl.n. Ljubljana 5291\n", + "LE Praha hl.n. Ostrava hl.n. 5226\n", + " Ostrava-Svinov 5226\n", + "ARR Praha hl.n. České Budějovice 5212\n", + "ČD Pardubice hl.n. Košice 5201\n", + " Warszawa Centralna Praha hl.n. 5195\n", + "LE Ostrava hl.n. Praha hl.n. 5048\n", + " Ostrava-Svinov Praha hl.n. 5048\n", + "ČD Slavonice Plzeň hl.n. 4833\n", + "ARR Ústí nad Labem hlavní nádraží Liberec 4765\n", + " České Budějovice Praha hl.n. 4726\n", + "RJ Brno Vídeň 4590\n", + "ČD Budapest-Nyugati pu Praha hl.n. 4534\n", + "ARR Tanvald Praha hl.n. 4460\n", + "ČD Bruxelles-Midi Praha hl.n. 4264\n", + " Ostrava hl.n. Gdansk Glowny 4098\n", + " Plzeň hl.n. Ostrava hl.n. 3915\n", + " Praha hl.n. Bern 3781\n", + " Liberec Salzburg Hbf 3711\n", + "RJ Ostrava Brno 3705\n", + "ARR Praha hl.n. Tanvald 3590\n", + "RJ Brno Ostrava 3548\n", + "ČD Budapest-Kelenföld Praha hl.n. 3527\n", + "RJ Vídeň Brno 3479\n", + "ČD České Budějovice Plzeň hl.n. 2882\n", + " Dresden Hbf Ústí n.L.hl.n. 2876\n", + "RJ Praha Budapešť 2686\n", + "ČD Znojmo Jihlava 2646\n", + " Praha hl.n. Zagreb Glavni kolodvor 2286\n", + "RJ Praha Bratislava 2117\n", + "ČD Ljubljana Praha hl.n. 1983\n", + " Berlin Hbf Warszawa Centralna 1960\n", + " České Budějovice Zürich HB 1950\n", + " Berlin Hbf Bruxelles-Midi 1945\n", + " Plzeň hl.n. Slavonice 1906\n", + " Köln Messe/Deutz Bruxelles-Midi 1751\n", + " Ljubljana Brno hl.n. 1689\n", + " Praha hl.n. Krakow Glowny 1612\n", + "RJ Praha Vídeň 1564\n", + "ČD Praha hl.n. Bratislava-Petržalka 1548\n", + " Praha-Holešovice Brno hl.n. 1467\n", + " Praha hl.n. Wien Franz-Josefs-Bahnhof 1465\n", + " München Hbf Gl.27-36 Bern 1462\n", + " Krakow Glowny Praha hl.n. 1441\n", + " Hamburg Hbf Brno hl.n. 1404\n", + " Praha-Holešovice Ostrava hl.n. 1389\n", + " Brno hl.n. Praha-Holešovice 1376\n", + " Bern Praha hl.n. 1353\n", + "RJ Vídeň Praha 1290\n", + "ČD Harmica Zagreb Glavni kolodvor 1286\n", + " Berlin Hbf Amsterdam Centraal 1265\n", + " Ostrava hl.n. Karlovy Vary 1196\n", + " Praha hl.n. Berlin Hbf 1176\n", + "RJ Bratislava Praha 1136\n", + "ČD Praha hl.n. Amsterdam Centraal 1106\n", + "RJ Praha Košice 1092\n", + "ČD Praha hl.n. Ostrava-Svinov 1030\n", + " Ostrava hl.n. Praha-Holešovice 938\n", + " Praha-Holešovice Bratislava hl.st. 936\n", + " Wien Franz-Josefs-Bahnhof Praha hl.n. 925\n", + " Ostrava-Svinov Praha hl.n. 917\n", + " Gdansk Glowny Ostrava hl.n. 853\n", + " Köln Messe/Deutz Gl.11-12 Praha hl.n. 841\n", + " Košice Pardubice hl.n. 827\n", + "LE Pardubice hl.n. Košice 792\n", + " Košice Pardubice hl.n. 768\n", + "ČD Praha-Holešovice Budapest-Nyugati pu 762\n", + " Bruxelles-Midi 755\n", + " Budapest-Deli pu Praha hl.n. 744\n", + "RJ Budapešť Praha 719\n", + "ČD Berlin Hbf Praha hl.n. 694\n", + " Praha-Holešovice Berlin Hbf (tief) 683\n", + " Wien Hbf 644\n", + " Berlin Hbf (tief) Praha-Holešovice 624\n", + "dtype: int64" + ] + }, + "execution_count": 905, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "df.groupby(['prodejce','odkud','kam']).size().nlargest(100)" + ] + }, + { + "cell_type": "code", + "execution_count": 909, + "id": "540ab067-dbc4-4a16-97b0-159e4d3a992d", + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
oscrapovanoprodejceodkudkamodjezdpredstihpredstih_dpredstih_hcenaprostredekvolnych_mistobsazenostjizdni_dobavzdalenostzpozdenicena_poznamkadenprestupyvlakymistenka_zdarmanahradni_busvolna_mista_economyvolna_mista_economy_plusvolna_mista_economy_businessvolna_mista_premium
325822024-11-02 22:54:46ČDPraha hl.n.Bruxelles-Midi2024-11-03 10:28:000 days 11:33:14011.553889NaNvlakNaN[Téměr vyprodaná místa k sezení, Téměr vyproda...667.0NaN[0, 0, 0, 0]Zjistit cenune3[EC 174 Berliner, IC 2442, ICE 79, ICE 10 ICE ...NoneNoneNaNNaNNaNNaN
325832024-11-02 22:54:46ČDPraha hl.n.Bruxelles-Midi2024-11-03 18:28:000 days 19:33:14019.5538896244.0vlakNaN[Předpokládané vysoké obsazení - doporučujeme ...907.0NaN[0, 0, 0]Nonene2[EC 458 Canopus, RB 15537, ICE 18 ICE Internat...NoneNoneNaNNaNNaNNaN
325842024-11-02 22:54:46ČDPraha hl.n.Bruxelles-Midi2024-11-03 18:05:000 days 19:10:14019.170556NaNvlakNaN[Předpokládané nízké obsazení]922.0NaN[0]Nonene0[ES 452 European Sleeper]NoneNoneNaNNaNNaNNaN
325852024-11-02 22:54:46ČDPraha hl.n.Bruxelles-Midi2024-11-03 12:28:000 days 13:33:14013.5538896244.0vlakNaN[Téměr vyprodaná místa k sezení, Téměr vyproda...667.0NaN[0, 0, 0, 0]Nonene3[EC 378 Berliner, IC 2444, ICE 1171, ICE 318 I...NoneNoneNaNNaNNaNNaN
325862024-11-02 22:54:46ČDPraha hl.n.Bruxelles-Midi2024-11-03 08:23:000 days 09:28:1409.4705567322.0vlakNaN[Předpokládané střední obsazení - doporučujeme...672.0NaN[0, 0, 0, 0, 0]Nonene4[IC 564 Západní expres, Sp 5284, RE 3406, ICE ...NoneNoneNaNNaNNaNNaN
..............................................................................
6140002024-11-19 22:00:00ČDPraha hl.n.Bruxelles-Midi2024-12-31 08:35:0041 days 10:35:0041994.5833337322.0vlakNaN[Předpokládané střední obsazení - doporučujeme...660.0NaN[0, 0, 0, 0]Noneút3[IC 564 Západní expres, Sp 5284, ICE 28, ICE 1...NoneNoneNaNNaNNaNNaN
6140012024-11-19 22:00:00ČDPraha hl.n.Bruxelles-Midi2024-12-31 18:28:0041 days 20:28:00411004.4666676244.0vlakNaN[Předpokládané střední obsazení - doporučujeme...907.0NaN[0, 0, 0]Noneút2[EC 458 Canopus, ICE 699, ICE 18 ICE Internati...NoneNoneNaNNaNNaNNaN
6140022024-11-19 22:00:00ČDPraha hl.n.Bruxelles-Midi2025-01-01 08:35:0042 days 10:35:00421018.5833337322.0vlakNaN[Předpokládané střední obsazení - doporučujeme...660.0NaN[0, 0, 0, 0]Nonest3[IC 564 Západní expres, Sp 5284, ICE 28, ICE 1...NoneNoneNaNNaNNaNNaN
6140032024-11-19 22:00:00ČDPraha hl.n.Bruxelles-Midi2025-01-02 15:35:0043 days 17:35:00431049.583333NaNvlakNaN[Předpokládané střední obsazení - doporučujeme...1020.0NaN[0, 0, 0]Zjistit cenučt2[EC 352 Bavorský expres, ICE 618, THA 9414]NoneNoneNaNNaNNaNNaN
6140042024-11-19 22:00:00ČDPraha hl.n.Bruxelles-Midi2024-12-31 14:33:0041 days 16:33:00411000.550000NaNvlakNaN[Předpokládané střední obsazení - doporučujeme...1159.0NaN[0, 0]Zjistit cenuút1[EC 172 Hungaria, NJ 424]NoneNoneNaNNaNNaNNaN
\n", + "

8809 rows × 25 columns

\n", + "
" + ], + "text/plain": [ + " oscrapovano prodejce odkud kam \\\n", + "32582 2024-11-02 22:54:46 ČD Praha hl.n. Bruxelles-Midi \n", + "32583 2024-11-02 22:54:46 ČD Praha hl.n. Bruxelles-Midi \n", + "32584 2024-11-02 22:54:46 ČD Praha hl.n. Bruxelles-Midi \n", + "32585 2024-11-02 22:54:46 ČD Praha hl.n. Bruxelles-Midi \n", + "32586 2024-11-02 22:54:46 ČD Praha hl.n. Bruxelles-Midi \n", + "... ... ... ... ... \n", + "614000 2024-11-19 22:00:00 ČD Praha hl.n. Bruxelles-Midi \n", + "614001 2024-11-19 22:00:00 ČD Praha hl.n. Bruxelles-Midi \n", + "614002 2024-11-19 22:00:00 ČD Praha hl.n. Bruxelles-Midi \n", + "614003 2024-11-19 22:00:00 ČD Praha hl.n. Bruxelles-Midi \n", + "614004 2024-11-19 22:00:00 ČD Praha hl.n. Bruxelles-Midi \n", + "\n", + " odjezd predstih predstih_d predstih_h cena \\\n", + "32582 2024-11-03 10:28:00 0 days 11:33:14 0 11.553889 NaN \n", + "32583 2024-11-03 18:28:00 0 days 19:33:14 0 19.553889 6244.0 \n", + "32584 2024-11-03 18:05:00 0 days 19:10:14 0 19.170556 NaN \n", + "32585 2024-11-03 12:28:00 0 days 13:33:14 0 13.553889 6244.0 \n", + "32586 2024-11-03 08:23:00 0 days 09:28:14 0 9.470556 7322.0 \n", + "... ... ... ... ... ... \n", + "614000 2024-12-31 08:35:00 41 days 10:35:00 41 994.583333 7322.0 \n", + "614001 2024-12-31 18:28:00 41 days 20:28:00 41 1004.466667 6244.0 \n", + "614002 2025-01-01 08:35:00 42 days 10:35:00 42 1018.583333 7322.0 \n", + "614003 2025-01-02 15:35:00 43 days 17:35:00 43 1049.583333 NaN \n", + "614004 2024-12-31 14:33:00 41 days 16:33:00 41 1000.550000 NaN \n", + "\n", + " prostredek volnych_mist \\\n", + "32582 vlak NaN \n", + "32583 vlak NaN \n", + "32584 vlak NaN \n", + "32585 vlak NaN \n", + "32586 vlak NaN \n", + "... ... ... \n", + "614000 vlak NaN \n", + "614001 vlak NaN \n", + "614002 vlak NaN \n", + "614003 vlak NaN \n", + "614004 vlak NaN \n", + "\n", + " obsazenost jizdni_doba \\\n", + "32582 [Téměr vyprodaná místa k sezení, Téměr vyproda... 667.0 \n", + "32583 [Předpokládané vysoké obsazení - doporučujeme ... 907.0 \n", + "32584 [Předpokládané nízké obsazení] 922.0 \n", + "32585 [Téměr vyprodaná místa k sezení, Téměr vyproda... 667.0 \n", + "32586 [Předpokládané střední obsazení - doporučujeme... 672.0 \n", + "... ... ... \n", + "614000 [Předpokládané střední obsazení - doporučujeme... 660.0 \n", + "614001 [Předpokládané střední obsazení - doporučujeme... 907.0 \n", + "614002 [Předpokládané střední obsazení - doporučujeme... 660.0 \n", + "614003 [Předpokládané střední obsazení - doporučujeme... 1020.0 \n", + "614004 [Předpokládané střední obsazení - doporučujeme... 1159.0 \n", + "\n", + " vzdalenost zpozdeni cena_poznamka den prestupy \\\n", + "32582 NaN [0, 0, 0, 0] Zjistit cenu ne 3 \n", + "32583 NaN [0, 0, 0] None ne 2 \n", + "32584 NaN [0] None ne 0 \n", + "32585 NaN [0, 0, 0, 0] None ne 3 \n", + "32586 NaN [0, 0, 0, 0, 0] None ne 4 \n", + "... ... ... ... .. ... \n", + "614000 NaN [0, 0, 0, 0] None út 3 \n", + "614001 NaN [0, 0, 0] None út 2 \n", + "614002 NaN [0, 0, 0, 0] None st 3 \n", + "614003 NaN [0, 0, 0] Zjistit cenu čt 2 \n", + "614004 NaN [0, 0] Zjistit cenu út 1 \n", + "\n", + " vlaky mistenka_zdarma \\\n", + "32582 [EC 174 Berliner, IC 2442, ICE 79, ICE 10 ICE ... None \n", + "32583 [EC 458 Canopus, RB 15537, ICE 18 ICE Internat... None \n", + "32584 [ES 452 European Sleeper] None \n", + "32585 [EC 378 Berliner, IC 2444, ICE 1171, ICE 318 I... None \n", + "32586 [IC 564 Západní expres, Sp 5284, RE 3406, ICE ... None \n", + "... ... ... \n", + "614000 [IC 564 Západní expres, Sp 5284, ICE 28, ICE 1... None \n", + "614001 [EC 458 Canopus, ICE 699, ICE 18 ICE Internati... None \n", + "614002 [IC 564 Západní expres, Sp 5284, ICE 28, ICE 1... None \n", + "614003 [EC 352 Bavorský expres, ICE 618, THA 9414] None \n", + "614004 [EC 172 Hungaria, NJ 424] None \n", + "\n", + " nahradni_bus volna_mista_economy volna_mista_economy_plus \\\n", + "32582 None NaN NaN \n", + "32583 None NaN NaN \n", + "32584 None NaN NaN \n", + "32585 None NaN NaN \n", + "32586 None NaN NaN \n", + "... ... ... ... \n", + "614000 None NaN NaN \n", + "614001 None NaN NaN \n", + "614002 None NaN NaN \n", + "614003 None NaN NaN \n", + "614004 None NaN NaN \n", + "\n", + " volna_mista_economy_business volna_mista_premium \n", + "32582 NaN NaN \n", + "32583 NaN NaN \n", + "32584 NaN NaN \n", + "32585 NaN NaN \n", + "32586 NaN NaN \n", + "... ... ... \n", + "614000 NaN NaN \n", + "614001 NaN NaN \n", + "614002 NaN NaN \n", + "614003 NaN NaN \n", + "614004 NaN NaN \n", + "\n", + "[8809 rows x 25 columns]" + ] + }, + "execution_count": 909, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "df[df['odkud'].str.contains('Prah') & df['kam'].str.contains('Brux')]" + ] + }, + { + "cell_type": "code", + "execution_count": 907, + "id": "f5250006-1c0f-4271-825a-3c685c577dfb", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Nejmenší počet přestupů: 0.\n", + "Nejrychlejší jízdní doba: 657.0 min.\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "C:\\Users\\micha\\AppData\\Local\\Temp\\ipykernel_17028\\2559701314.py:17: UserWarning: Boolean Series key will be reindexed to match DataFrame index.\n", + " dfc = dfc[(dfc['prestupy'] == minimum_prestupu) & (df['jizdni_doba'] <= (minimum_casu * nasobek))]\n" + ] + }, + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
oscrapovanoprodejceodkudkamodjezdpredstihpredstih_dpredstih_hcenaprostredekvolnych_mistobsazenostjizdni_dobavzdalenostzpozdenicena_poznamkadenprestupyvlakymistenka_zdarmanahradni_busvolna_mista_economyvolna_mista_economy_plusvolna_mista_economy_businessvolna_mista_premium
\n", + "
" + ], + "text/plain": [ + "Empty DataFrame\n", + "Columns: [oscrapovano, prodejce, odkud, kam, odjezd, predstih, predstih_d, predstih_h, cena, prostredek, volnych_mist, obsazenost, jizdni_doba, vzdalenost, zpozdeni, cena_poznamka, den, prestupy, vlaky, mistenka_zdarma, nahradni_bus, volna_mista_economy, volna_mista_economy_plus, volna_mista_economy_business, volna_mista_premium]\n", + "Index: []" + ] + }, + "execution_count": 907, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "filtr('ČD','Praha hl.n.','Bruxelles-Midi')" + ] + }, + { + "cell_type": "code", + "execution_count": 929, + "id": "ac76c840-c213-4429-ae48-ec3cf8d3e0ec", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Nejmenší počet přestupů: 0.\n", + "Nejrychlejší jízdní doba: 247.0 min.\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "C:\\Users\\micha\\AppData\\Local\\Temp\\ipykernel_17028\\2559701314.py:17: UserWarning: Boolean Series key will be reindexed to match DataFrame index.\n", + " dfc = dfc[(dfc['prestupy'] == minimum_prestupu) & (df['jizdni_doba'] <= (minimum_casu * nasobek))]\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Nejmenší počet přestupů: 0.\n", + "Nejrychlejší jízdní doba: 479.0 min.\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "C:\\Users\\micha\\AppData\\Local\\Temp\\ipykernel_17028\\2559701314.py:17: UserWarning: Boolean Series key will be reindexed to match DataFrame index.\n", + " dfc = dfc[(dfc['prestupy'] == minimum_prestupu) & (df['jizdni_doba'] <= (minimum_casu * nasobek))]\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Nejmenší počet přestupů: 0.\n", + "Nejrychlejší jízdní doba: 241.0 min.\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "C:\\Users\\micha\\AppData\\Local\\Temp\\ipykernel_17028\\2559701314.py:17: UserWarning: Boolean Series key will be reindexed to match DataFrame index.\n", + " dfc = dfc[(dfc['prestupy'] == minimum_prestupu) & (df['jizdni_doba'] <= (minimum_casu * nasobek))]\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Nejmenší počet přestupů: 0.\n", + "Nejrychlejší jízdní doba: 238.0 min.\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "C:\\Users\\micha\\AppData\\Local\\Temp\\ipykernel_17028\\2559701314.py:17: UserWarning: Boolean Series key will be reindexed to match DataFrame index.\n", + " dfc = dfc[(dfc['prestupy'] == minimum_prestupu) & (df['jizdni_doba'] <= (minimum_casu * nasobek))]\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Nejmenší počet přestupů: 0.\n", + "Nejrychlejší jízdní doba: 253.0 min.\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "C:\\Users\\micha\\AppData\\Local\\Temp\\ipykernel_17028\\2559701314.py:17: UserWarning: Boolean Series key will be reindexed to match DataFrame index.\n", + " dfc = dfc[(dfc['prestupy'] == minimum_prestupu) & (df['jizdni_doba'] <= (minimum_casu * nasobek))]\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Nejmenší počet přestupů: 0.\n", + "Nejrychlejší jízdní doba: 250.0 min.\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "C:\\Users\\micha\\AppData\\Local\\Temp\\ipykernel_17028\\2559701314.py:17: UserWarning: Boolean Series key will be reindexed to match DataFrame index.\n", + " dfc = dfc[(dfc['prestupy'] == minimum_prestupu) & (df['jizdni_doba'] <= (minimum_casu * nasobek))]\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Nejmenší počet přestupů: 0.\n", + "Nejrychlejší jízdní doba: 344.0 min.\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "C:\\Users\\micha\\AppData\\Local\\Temp\\ipykernel_17028\\2559701314.py:17: UserWarning: Boolean Series key will be reindexed to match DataFrame index.\n", + " dfc = dfc[(dfc['prestupy'] == minimum_prestupu) & (df['jizdni_doba'] <= (minimum_casu * nasobek))]\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Nejmenší počet přestupů: 0.\n", + "Nejrychlejší jízdní doba: 645.0 min.\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "C:\\Users\\micha\\AppData\\Local\\Temp\\ipykernel_17028\\2559701314.py:17: UserWarning: Boolean Series key will be reindexed to match DataFrame index.\n", + " dfc = dfc[(dfc['prestupy'] == minimum_prestupu) & (df['jizdni_doba'] <= (minimum_casu * nasobek))]\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Nejmenší počet přestupů: 1.\n", + "Nejrychlejší jízdní doba: 678.0 min.\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "C:\\Users\\micha\\AppData\\Local\\Temp\\ipykernel_17028\\2559701314.py:17: UserWarning: Boolean Series key will be reindexed to match DataFrame index.\n", + " dfc = dfc[(dfc['prestupy'] == minimum_prestupu) & (df['jizdni_doba'] <= (minimum_casu * nasobek))]\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Nejmenší počet přestupů: 0.\n", + "Nejrychlejší jízdní doba: 399.0 min.\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "C:\\Users\\micha\\AppData\\Local\\Temp\\ipykernel_17028\\2559701314.py:17: UserWarning: Boolean Series key will be reindexed to match DataFrame index.\n", + " dfc = dfc[(dfc['prestupy'] == minimum_prestupu) & (df['jizdni_doba'] <= (minimum_casu * nasobek))]\n" + ] + } + ], + "source": [ + "cd_berlin = filtr(\"ČD\",\"Praha hl.n.\",\"Berlin Hbf\")\n", + "cd_berlin = pd.Series(cd_berlin.groupby('predstih_d')['cena'].agg(lambda x: [x.max(), x.min(), x.median()]), name=\"ČD Praha-Berlín\").head(60)\n", + "cd_vars = filtr(\"ČD\",\"Praha hl.n.\",\"Warszawa Centralna\")\n", + "cd_vars = pd.Series(cd_vars.groupby('predstih_d')['cena'].agg(lambda x: [x.max(), x.min(), x.median()]), name=\"ČD Praha-Varšava\").head(60)\n", + "cd_vid = filtr(\"ČD\",\"Praha hl.n.\",\"Wien Hbf\")\n", + "cd_vid = pd.Series(cd_vid.groupby('predstih_d')['cena'].agg(lambda x: [x.max(), x.min(), x.median()]), name=\"ČD Praha-Vídeň\").head(60)\n", + "rj_vid = filtr(\"RJ\",\"Praha\",\"Víde\")\n", + "rj_vid = pd.Series(rj_vid.groupby('predstih_d')['cena'].agg(lambda x: [x.max(), x.min(), x.median()]), name=\"RJ Praha-Vídeň\").head(60)\n", + "cd_brat = filtr(\"ČD\",\"Praha hl.n.\",\"Bratislava hl.st.\")\n", + "cd_brat = pd.Series(cd_brat.groupby('predstih_d')['cena'].agg(lambda x: [x.max(), x.min(), x.median()]), name=\"ČD Praha-Bratislava\").head(60)\n", + "rj_brat = filtr(\"RJ\",\"Praha\",\"Bratislava\")\n", + "rj_brat = pd.Series(rj_brat.groupby('predstih_d')['cena'].agg(lambda x: [x.max(), x.min(), x.median()]), name=\"RJ Praha-Bratislava\").head(60)\n", + "le_krak = filtr(\"LE\",\"Praha\",\"Krak\")\n", + "le_krak = pd.Series(le_krak.groupby('predstih_d')['cena'].agg(lambda x: [x.max(), x.min(), x.median()]), name=\"LE Praha-Krakov\").head(60)\n", + "rj_cop = filtr('RJ','Praha','Čop')\n", + "rj_cop = pd.Series(rj_cop.groupby('predstih_d')['cena'].agg(lambda x: [x.max(), x.min(), x.median()]), name=\"RJ Praha-Čop\").head(60)\n", + "cd_brn = filtr('ČD','Praha hl.n.','Bern')\n", + "cd_brn = pd.Series(cd_brn.groupby('predstih_d')['cena'].agg(lambda x: [x.max(), x.min(), x.median()]), name=\"ČD Praha-Bern\").head(60)\n", + "rj_buda = filtr('RJ','Praha','Budap')\n", + "rj_buda = pd.Series(rj_buda.groupby('predstih_d')['cena'].agg(lambda x: [x.max(), x.min(), x.median()]), name=\"RJ Praha-Budapešť\").head(60)\n", + "ukazat = [cd_berlin, cd_vars, cd_brat, rj_brat, cd_vid, rj_vid, le_kosi, rj_cop, cd_buda, rj_buda, cd_brn, le_krak]\n", + "len(ukazat)\n", + "for u in ukazat:\n", + " u.index = u.index.map(lambda x: f\"{x} d\")" + ] + }, + { + "cell_type": "code", + "execution_count": 882, + "id": "85d56a54-c555-4747-a494-e443834ab04c", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Nejmenší počet přestupů: 0.\n", + "Nejrychlejší jízdní doba: 479.0 min.\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "C:\\Users\\micha\\AppData\\Local\\Temp\\ipykernel_17028\\2559701314.py:17: UserWarning: Boolean Series key will be reindexed to match DataFrame index.\n", + " dfc = dfc[(dfc['prestupy'] == minimum_prestupu) & (df['jizdni_doba'] <= (minimum_casu * nasobek))]\n" + ] + } + ], + "source": [] + }, + { + "cell_type": "code", + "execution_count": 885, + "id": "ec7b74ef-0e39-4fec-9f2b-75dbf17eddfb", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Nejmenší počet přestupů: 0.\n", + "Nejrychlejší jízdní doba: 241.0 min.\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "C:\\Users\\micha\\AppData\\Local\\Temp\\ipykernel_17028\\2559701314.py:17: UserWarning: Boolean Series key will be reindexed to match DataFrame index.\n", + " dfc = dfc[(dfc['prestupy'] == minimum_prestupu) & (df['jizdni_doba'] <= (minimum_casu * nasobek))]\n" ] } ], - "source": [ - "help(irozhlas_graf)" - ] + "source": [] }, { "cell_type": "code", - "execution_count": 323, - "id": "c8983054-07a9-4fc7-b93e-881863c5b1ac", + "execution_count": null, + "id": "c82bc4ab-efce-4f48-babf-40e8c41aebc1", + "metadata": {}, + "outputs": [], + "source": [] + }, + { + "cell_type": "code", + "execution_count": 887, + "id": "e5a3e936-85f0-4819-a711-124bb407eeac", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ - "Graf uložen.\n" + "Nejmenší počet přestupů: 0.\n", + "Nejrychlejší jízdní doba: 238.0 min.\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "C:\\Users\\micha\\AppData\\Local\\Temp\\ipykernel_17028\\2559701314.py:17: UserWarning: Boolean Series key will be reindexed to match DataFrame index.\n", + " dfc = dfc[(dfc['prestupy'] == minimum_prestupu) & (df['jizdni_doba'] <= (minimum_casu * nasobek))]\n" ] } ], - "source": [ - "irozhlas_graf(carovy=[cd_varsava, rj_cop, cd_budapest, le_kosice, rj_bratislava, cd_berlin, cd_bratislava, cd_viden, rj_viden, le_krakov], skryte=[rj_cop, le_kosice, le_krakov, cd_budapest], target='ceny_mezinarodni', titulek='Střední ceny jízdného do zahraničí v závislosti na předstihu nákupu', podtitulek='Východní zobrazení vybírá jízdenky do hlavních měst okolních zemí, další spoje lze rozkliknout níže.', kredity=['Zdroj dat: e-shopy dopravců v listopadu 2024. Vizualizace: iROZHLAS.cz','https://www.irozhlas.cz/zpravy-tag/datova-zurnalistika'])" - ] + "source": [] }, { "cell_type": "code", - "execution_count": 451, - "id": "487d2657-0ad2-4220-bc29-856e7754bf96", + "execution_count": 621, + "id": "215fbbec-ff2b-4c53-865c-9277c23f3cb4", "metadata": {}, - "outputs": [], - "source": [ - "xx = df[df['odkud'].str.contains('Pra') & df['kam'].str.contains('Krak')].groupby('predstih_d')['cena'].agg(lambda x: [x.max(), x.min(), x.median()])" - ] + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Nejmenší počet přestupů: 0.\n", + "Nejrychlejší jízdní doba: 253.0 min.\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "C:\\Users\\micha\\AppData\\Local\\Temp\\ipykernel_17028\\2559701314.py:17: UserWarning: Boolean Series key will be reindexed to match DataFrame index.\n", + " dfc = dfc[(dfc['prestupy'] == minimum_prestupu) & (df['jizdni_doba'] <= (minimum_casu * nasobek))]\n" + ] + } + ], + "source": [] }, { "cell_type": "code", - "execution_count": 453, - "id": "18d02a5e-64b7-4d9d-bbfb-613e205bacae", + "execution_count": 807, + "id": "0da674c5-d366-4d64-a3b6-c0872503465f", "metadata": {}, "outputs": [ { - "data": { - "text/plain": [ - "predstih_d\n", - "0 [1679.0, 440.0, 800.0]\n", - "1 [1809.0, 440.0, 800.0]\n", - "2 [1569.0, 361.0, 800.0]\n", - "3 [1599.0, 361.0, 671.0]\n", - "4 [1519.0, 361.0, 671.0]\n", - "5 [1519.0, 361.0, 671.0]\n", - "6 [1479.0, 361.0, 516.0]\n", - "7 [1279.0, 361.0, 503.0]\n", - "8 [1279.0, 361.0, 490.0]\n", - "9 [1209.0, 361.0, 490.0]\n", - "10 [1476.0, 361.0, 706.0]\n", - "11 [1279.0, 361.0, 533.5]\n", - "12 [1473.0, 361.0, 706.0]\n", - "13 [1279.0, 361.0, 671.0]\n", - "14 [1476.0, 361.0, 611.0]\n", - "15 [1396.0, 361.0, 551.0]\n", - "16 [1476.0, 361.0, 790.0]\n", - "17 [1476.0, 490.0, 845.0]\n", - "18 [1396.0, 361.0, 790.0]\n", - "19 [1396.0, 440.0, 1084.0]\n", - "20 [1349.0, 361.0, 470.0]\n", - "21 [1008.0, 361.0, 418.0]\n", - "22 [1279.0, 361.0, 800.0]\n", - "23 [1084.0, 361.0, 396.0]\n", - "24 [1396.0, 361.0, 835.0]\n", - "25 [1396.0, 361.0, 671.0]\n", - "26 [1396.0, 361.0, 832.0]\n", - "27 [1349.0, 361.0, 551.0]\n", - "28 [1084.0, 361.0, 490.0]\n", - "29 [890.0, 361.0, 585.0]\n", - "30 [890.0, 361.0, 671.0]\n", - "31 [1600.0, 516.0, 800.0]\n", - "32 [1154.0, 551.0, 993.5]\n", - "33 [890.0, 419.0, 692.5]\n", - "34 [890.0, 419.0, 799.0]\n", - "35 [890.0, 890.0, 890.0]\n", - "36 [890.0, 739.0, 814.5]\n", - "37 [1029.0, 279.0, 587.5]\n", - "38 [903.0, 279.0, 671.0]\n", - "39 [1084.0, 279.0, 616.0]\n", - "40 [890.0, 361.0, 551.0]\n", - "41 [1084.0, 279.0, 551.0]\n", - "42 [890.0, 279.0, 546.5]\n", - "43 [1011.0, 299.0, 671.0]\n", - "44 [890.0, 279.0, 679.0]\n", - "45 [790.0, 279.0, 534.5]\n", - "46 [440.0, 279.0, 359.5]\n", - "48 [279.0, 279.0, 279.0]\n", - "49 [679.0, 279.0, 479.0]\n", - "51 [299.0, 299.0, 299.0]\n", - "52 [289.0, 289.0, 289.0]\n", - "54 [679.0, 279.0, 279.0]\n", - "55 [671.0, 279.0, 529.0]\n", - "56 [671.0, 279.0, 516.0]\n", - "57 [671.0, 279.0, 516.0]\n", - "58 [516.0, 289.0, 516.0]\n", - "60 [299.0, 299.0, 299.0]\n", - "61 [279.0, 279.0, 279.0]\n", - "62 [279.0, 279.0, 279.0]\n", - "64 [nan, nan, nan]\n", - "65 [nan, nan, nan]\n", - "66 [289.0, 289.0, 289.0]\n", - "67 [299.0, 299.0, 299.0]\n", - "68 [279.0, 279.0, 279.0]\n", - "69 [279.0, 279.0, 279.0]\n", - "70 [279.0, 279.0, 279.0]\n", - "71 [279.0, 279.0, 279.0]\n", - "72 [279.0, 279.0, 279.0]\n", - "73 [289.0, 289.0, 289.0]\n", - "75 [289.0, 279.0, 284.0]\n", - "79 [279.0, 279.0, 279.0]\n", - "80 [289.0, 289.0, 289.0]\n", - "81 [279.0, 279.0, 279.0]\n", - "82 [nan, nan, nan]\n", - "83 [279.0, 279.0, 279.0]\n", - "84 [279.0, 279.0, 279.0]\n", - "85 [279.0, 279.0, 279.0]\n", - "88 [299.0, 299.0, 299.0]\n", - "89 [nan, nan, nan]\n", - "90 [279.0, 279.0, 279.0]\n", - "92 [279.0, 279.0, 279.0]\n", - "Name: cena, dtype: object" - ] - }, - "execution_count": 453, - "metadata": {}, - "output_type": "execute_result" + "name": "stdout", + "output_type": "stream", + "text": [ + "Nejmenší počet přestupů: 0.\n", + "Nejrychlejší jízdní doba: 401.0 min.\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "C:\\Users\\micha\\AppData\\Local\\Temp\\ipykernel_17028\\2559701314.py:17: UserWarning: Boolean Series key will be reindexed to match DataFrame index.\n", + " dfc = dfc[(dfc['prestupy'] == minimum_prestupu) & (df['jizdni_doba'] <= (minimum_casu * nasobek))]\n" + ] } ], "source": [ - "xx" + "cd_buda = filtr(\"ČD\",\"Praha hl.n.\",\"Budap\")\n", + "cd_buda = pd.Series(cd_buda.groupby('predstih_d')['cena'].agg(lambda x: [x.max(), x.min(), x.median()]), name=\"ČD Praha-Budapešť\").head(60)" ] }, { "cell_type": "code", - "execution_count": 449, - "id": "293f82eb-e5f6-4ff4-bd36-ce92a8021179", - "metadata": {}, - "outputs": [ - { - "data": { - "text/plain": [ - "[[1679.0, 440.0],\n", - " [1809.0, 440.0],\n", - " [1569.0, 361.0],\n", - " [1599.0, 361.0],\n", - " [1519.0, 361.0],\n", - " [1519.0, 361.0],\n", - " [1479.0, 361.0],\n", - " [1279.0, 361.0],\n", - " [1279.0, 361.0],\n", - " [1209.0, 361.0],\n", - " [1476.0, 361.0],\n", - " [1279.0, 361.0],\n", - " [1473.0, 361.0],\n", - " [1279.0, 361.0],\n", - " [1476.0, 361.0],\n", - " [1396.0, 361.0],\n", - " [1476.0, 361.0],\n", - " [1476.0, 490.0],\n", - " [1396.0, 361.0],\n", - " [1396.0, 440.0],\n", - " [1349.0, 361.0],\n", - " [1008.0, 361.0],\n", - " [1279.0, 361.0],\n", - " [1084.0, 361.0],\n", - " [1396.0, 361.0],\n", - " [1396.0, 361.0],\n", - " [1396.0, 361.0],\n", - " [1349.0, 361.0],\n", - " [1084.0, 361.0],\n", - " [890.0, 361.0],\n", - " [890.0, 361.0],\n", - " [1600.0, 516.0],\n", - " [1154.0, 551.0],\n", - " [890.0, 419.0],\n", - " [890.0, 419.0],\n", - " [890.0, 890.0],\n", - " [890.0, 739.0],\n", - " [1029.0, 279.0],\n", - " [903.0, 279.0],\n", - " [1084.0, 279.0],\n", - " [890.0, 361.0],\n", - " [1084.0, 279.0],\n", - " [890.0, 279.0],\n", - " [1011.0, 299.0],\n", - " [890.0, 279.0],\n", - " [790.0, 279.0],\n", - " [440.0, 279.0],\n", - " [279.0, 279.0],\n", - " [679.0, 279.0],\n", - " [299.0, 299.0],\n", - " [289.0, 289.0],\n", - " [679.0, 279.0],\n", - " [671.0, 279.0],\n", - " [671.0, 279.0],\n", - " [671.0, 279.0],\n", - " [516.0, 289.0],\n", - " [299.0, 299.0],\n", - " [279.0, 279.0],\n", - " [279.0, 279.0],\n", - " [nan, nan],\n", - " [nan, nan],\n", - " [289.0, 289.0],\n", - " [299.0, 299.0],\n", - " [279.0, 279.0],\n", - " [279.0, 279.0],\n", - " [279.0, 279.0],\n", - " [279.0, 279.0],\n", - " [279.0, 279.0],\n", - " [289.0, 289.0],\n", - " [289.0, 279.0],\n", - " [279.0, 279.0],\n", - " [289.0, 289.0],\n", - " [279.0, 279.0],\n", - " [nan, nan],\n", - " [279.0, 279.0],\n", - " [279.0, 279.0],\n", - " [279.0, 279.0],\n", - " [299.0, 299.0],\n", - " [nan, nan],\n", - " [279.0, 279.0],\n", - " [279.0, 279.0]]" - ] - }, - "execution_count": 449, - "metadata": {}, - "output_type": "execute_result" + "execution_count": 811, + "id": "799ccac7-ba48-4aa1-a19a-31921bedd7e0", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Nejmenší počet přestupů: 0.\n", + "Nejrychlejší jízdní doba: 401.0 min.\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "C:\\Users\\micha\\AppData\\Local\\Temp\\ipykernel_17028\\2559701314.py:17: UserWarning: Boolean Series key will be reindexed to match DataFrame index.\n", + " dfc = dfc[(dfc['prestupy'] == minimum_prestupu) & (df['jizdni_doba'] <= (minimum_casu * nasobek))]\n" + ] } ], "source": [ - "xx.apply(lambda x: x[0:2]).fillna(0).to_list()" + "cd_buda = filtr(\"ČD\",\"Praha hl.n.\",\"Budap\")\n", + "cd_buda = pd.Series(cd_buda.groupby('predstih_d')['cena'].agg(lambda x: [x.max(), x.min(), x.median()]), name=\"ČD Praha-Budapešť\").head(60)" ] }, { "cell_type": "code", - "execution_count": 411, - "id": "2fb161b7-d3a5-4980-8aa4-0b691794b963", + "execution_count": 813, + "id": "da3fc72d-c8fe-4912-a074-13eafdd5fa84", "metadata": {}, "outputs": [ { - "data": { - "text/plain": [ - "predstih_d\n", - "0 [4324.0, 1058.0]\n", - "1 [4324.0, 1058.0]\n", - "2 [4324.0, 490.0]\n", - "3 [4324.0, 490.0]\n", - "4 [2316.0, 490.0]\n", - "5 [2316.0, 490.0]\n", - "6 [2316.0, 490.0]\n", - "7 [2563.0, 490.0]\n", - "8 [2563.0, 490.0]\n", - "9 [2563.0, 490.0]\n", - "10 [2563.0, 490.0]\n", - "11 [2563.0, 490.0]\n", - "12 [2563.0, 490.0]\n", - "13 [2563.0, 490.0]\n", - "14 [2563.0, 490.0]\n", - "15 [2563.0, 490.0]\n", - "16 [2316.0, 490.0]\n", - "17 [2316.0, 490.0]\n", - "18 [2563.0, 490.0]\n", - "19 [2563.0, 490.0]\n", - "20 [2563.0, 490.0]\n", - "21 [2316.0, 490.0]\n", - "22 [2563.0, 490.0]\n", - "23 [2563.0, 490.0]\n", - "24 [2563.0, 490.0]\n", - "25 [2316.0, 490.0]\n", - "26 [2316.0, 490.0]\n", - "27 [2316.0, 490.0]\n", - "28 [2316.0, 490.0]\n", - "29 [2316.0, 490.0]\n", - "30 [2316.0, 490.0]\n", - "31 [1238.0, 490.0]\n", - "32 [1298.0, 490.0]\n", - "33 [1238.0, 490.0]\n", - "34 [1471.0, 490.0]\n", - "35 [929.0, 490.0]\n", - "36 [2316.0, 490.0]\n", - "37 [2316.0, 490.0]\n", - "38 [2158.0, 490.0]\n", - "39 [2158.0, 490.0]\n", - "40 [748.0, 490.0]\n", - "41 [1187.0, 490.0]\n", - "42 [929.0, 490.0]\n", - "43 [929.0, 490.0]\n", - "44 [929.0, 645.0]\n", - "45 [2158.0, 490.0]\n", - "46 [2158.0, 490.0]\n", - "47 [1187.0, 490.0]\n", - "48 [2158.0, 490.0]\n", - "49 [2158.0, 490.0]\n", - "50 [1143.0, 490.0]\n", - "51 [1238.0, 490.0]\n", - "52 [2158.0, 490.0]\n", - "53 [2158.0, 490.0]\n", - "54 [2158.0, 490.0]\n", - "55 [2158.0, 490.0]\n", - "56 [1103.0, 490.0]\n", - "58 [2158.0, 490.0]\n", - "59 [2158.0, 490.0]\n", - "60 [2158.0, 490.0]\n", - "61 [nan, nan]\n", - "62 [nan, nan]\n", - "63 [nan, nan]\n", - "64 [nan, nan]\n", - "65 [nan, nan]\n", - "66 [nan, nan]\n", - "67 [nan, nan]\n", - "68 [nan, nan]\n", - "69 [nan, nan]\n", - "70 [nan, nan]\n", - "71 [nan, nan]\n", - "72 [nan, nan]\n", - "73 [nan, nan]\n", - "74 [nan, nan]\n", - "75 [nan, nan]\n", - "76 [nan, nan]\n", - "77 [nan, nan]\n", - "78 [nan, nan]\n", - "79 [nan, nan]\n", - "80 [nan, nan]\n", - "81 [nan, nan]\n", - "82 [nan, nan]\n", - "83 [nan, nan]\n", - "84 [nan, nan]\n", - "85 [nan, nan]\n", - "86 [nan, nan]\n", - "87 [nan, nan]\n", - "88 [nan, nan]\n", - "89 [nan, nan]\n", - "Name: cena, dtype: object" - ] - }, - "execution_count": 411, - "metadata": {}, - "output_type": "execute_result" + "name": "stdout", + "output_type": "stream", + "text": [ + "Nejmenší počet přestupů: 0.\n", + "Nejrychlejší jízdní doba: 428.0 min.\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "C:\\Users\\micha\\AppData\\Local\\Temp\\ipykernel_17028\\2559701314.py:17: UserWarning: Boolean Series key will be reindexed to match DataFrame index.\n", + " dfc = dfc[(dfc['prestupy'] == minimum_prestupu) & (df['jizdni_doba'] <= (minimum_casu * nasobek))]\n" + ] } ], "source": [ - "xx" + "le_kosi = filtr(\"LE\",\"Pardubice\",\"Košic\")\n", + "le_kosi = pd.Series(le_kosi.groupby('predstih_d')['cena'].agg(lambda x: [x.max(), x.min(), x.median()]), name=\"LE Pardubice-Košice\").head(60)" ] }, + { + "cell_type": "code", + "execution_count": 815, + "id": "cdcd0e9e-7781-4aa9-8515-9670adb37933", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Nejmenší počet přestupů: 0.\n", + "Nejrychlejší jízdní doba: 344.0 min.\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "C:\\Users\\micha\\AppData\\Local\\Temp\\ipykernel_17028\\2559701314.py:17: UserWarning: Boolean Series key will be reindexed to match DataFrame index.\n", + " dfc = dfc[(dfc['prestupy'] == minimum_prestupu) & (df['jizdni_doba'] <= (minimum_casu * nasobek))]\n" + ] + } + ], + "source": [] + }, + { + "cell_type": "code", + "execution_count": 759, + "id": "e3aec65b-7fff-41cd-ac5a-58cbec2f470b", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Nejmenší počet přestupů: 0.\n", + "Nejrychlejší jízdní doba: 250.0 min.\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "C:\\Users\\micha\\AppData\\Local\\Temp\\ipykernel_17028\\2559701314.py:17: UserWarning: Boolean Series key will be reindexed to match DataFrame index.\n", + " dfc = dfc[(dfc['prestupy'] == minimum_prestupu) & (df['jizdni_doba'] <= (minimum_casu * nasobek))]\n" + ] + } + ], + "source": [] + }, + { + "cell_type": "code", + "execution_count": 791, + "id": "429952e0-27de-4ef1-aa81-f5e9483335fc", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Nejmenší počet přestupů: 0.\n", + "Nejrychlejší jízdní doba: 645.0 min.\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "C:\\Users\\micha\\AppData\\Local\\Temp\\ipykernel_17028\\2559701314.py:17: UserWarning: Boolean Series key will be reindexed to match DataFrame index.\n", + " dfc = dfc[(dfc['prestupy'] == minimum_prestupu) & (df['jizdni_doba'] <= (minimum_casu * nasobek))]\n" + ] + } + ], + "source": [] + }, { "cell_type": "code", "execution_count": null, @@ -3734,7 +4705,7 @@ }, { "cell_type": "code", - "execution_count": 555, + "execution_count": 855, "id": "18fb580e-0208-4901-81e4-51e88962223e", "metadata": {}, "outputs": [], @@ -3755,7 +4726,10 @@ " \"#ffee65\", ## žlutá (yellow)\n", " \"#beb9db\", ## levandulová (lavender)\n", " \"#fdcce5\", ## skoro černá\n", - " \"#8bd3c7\", ## světle tyrkysová (light turquoise)\n", + " \"#8bd3c7\", ## světle tyrkysová (light turquoise),\n", + " \"red\",\n", + " \"blue\",\n", + " \"purple\"\n", " ],\n", " histogram=False,\n", " max_procenta=100,\n", @@ -3917,36 +4891,44 @@ " )\n", " )\n", "\n", - " if s in rozpeti:\n", + " if any(s.name == x.name for x in rozpeti):\n", + " line_id = f\"line_{popisek}\"\n", + " print(line_id)\n", " my_chart.add_series(\n", " LineSeries(\n", " data=s.apply(lambda x: x[2]).fillna(0).to_list(),\n", " visible=viditelnost,\n", + " id = line_id,\n", " name=popisek,\n", " y_axis=ktera_osa,\n", - " color = barvy[pocitadlo_barev]\n", + " color = barvy[pocitadlo_barev],\n", + " tooltip={\"valuePrefix\": \"střední: \",\"valueSuffix\": \" Kč\"},\n", " ))\n", " my_chart.add_series(\n", " AreaRangeSeries(\n", " data=s.apply(lambda x: x[0:2]).fillna(0).to_list(),\n", " visible=viditelnost,\n", + " type='arearange',\n", " name=popisek,\n", - " linkedTo = 'previous',\n", + " linkedto = line_id,\n", " y_axis=ktera_osa,\n", " color = barvy[pocitadlo_barev],\n", + " fillOpacity=0.3,\n", + " tooltip={\"valueSuffix\": \" Kč\"},\n", + " lineWidth=0,\n", + " marker={\"enabled\": False}\n", " ))\n", " pocitadlo_barev += 1\n", "\n", - "\n", - " else:\n", - " my_chart.add_series(\n", - " typ(\n", - " data=s.fillna(0).to_list(),\n", - " visible=viditelnost,\n", - " name=popisek,\n", - " y_axis=ktera_osa,\n", - " )\n", - " )\n", + " # else:\n", + " #my_chart.add_series(\n", + " #typ(\n", + " # data=s.fillna(0).to_list(),\n", + " # visible=viditelnost,\n", + " # name=popisek,\n", + " # y_axis=ktera_osa,\n", + " # )\n", + " #)\n", "\n", " if len(sloupcovy) > 0:\n", " vykresleni(sloupcovy, ColumnSeries)\n", @@ -3955,8 +4937,7 @@ " if len(vodorovny) > 0:\n", " vykresleni(vodorovny, BarSeries)\n", " if len(rozpeti) > 0:\n", - " print(\"jsem delší\")\n", - " vykresleni(rozpeti, AreaRangeSeries) \n", + " vykresleni(rozpeti, AreaRangeSeries)\n", "\n", " my_chart.options.colors = barvy\n", "\n", @@ -3975,11 +4956,33 @@ " if skrytnuly == True:\n", " as_js_literal = as_js_literal.replace(\"y: 0.0\", \"y: null\")\n", "\n", - " if len(rozpeti) > 0:\n", - " as_js_literal = as_js_literal.replace(\"type: 'arearange'\", \"type: 'arearange',linkedTo: 'previous',fillOpacity: 0.3,lineWidth: 0,marker: {enabled: false}\")\n", + " # if len(rozpeti) > 0:\n", + " \n", + " # as_js_literal = as_js_literal.replace(\n", + " # '\"type\":\"arearange\"', \n", + " # '\"type\":\"arearange\", \"linkedTo\": \"previous\", \"fillOpacity\": 0.3, \"lineWidth\": 0, \"marker\": {\"enabled\": false}'\n", + " # )\n", "\n", - " code = f\"{titulek}{pred}{as_js_literal}\"\n", + " \n", + "# if len(rozpeti) > 0:\n", + "# as_js_literal = as_js_literal.replace(\"type: 'arearange'\", \"type: 'arearange',linkedTo: 'previous',fillOpacity: 0.3,lineWidth: 0,marker: {enabled: false}\")\n", + "\n", + " as_js_literal = as_js_literal.splitlines()\n", + "\n", + " as_js_literal2 = []\n", + " \n", + " for line in as_js_literal:\n", + " if 'id: ' in line:\n", + " ajdy = line.split(\"'\")[1]\n", + " print(ajdy)\n", + " if \"type: 'arearange'\" in line:\n", + " line = line.replace(\" type: 'arearange'\",f\" type: 'arearange',linkedTo: '{ajdy}', fillOpacity: 0.3, lineWidth: 0,\")\n", + " as_js_literal2.append(line)\n", + " as_js_literal2 = \"\\n\".join(as_js_literal2)\n", + " \n", + " code = f\"{titulek}{pred}{as_js_literal2}\"\n", "\n", + " \n", " if not os.path.exists(\"grafy\"):\n", " os.mkdir(\"grafy\")\n", "\n", @@ -4051,7 +5054,105 @@ }, { "cell_type": "code", - "execution_count": 553, + "execution_count": 889, + "id": "7eaa0f90-0d94-4979-9330-3d4125ad0942", + "metadata": {}, + "outputs": [], + "source": [] + }, + { + "cell_type": "code", + "execution_count": 893, + "id": "68e19aba-66ae-480b-9554-b30c16d473c6", + "metadata": {}, + "outputs": [], + "source": [] + }, + { + "cell_type": "code", + "execution_count": 897, + "id": "810a36ac-537e-4bff-ac3f-ac171fcf52b4", + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "predstih_d\n", + "0 d [2172.0, 877.0, 1522.0]\n", + "1 d [2172.0, 877.0, 1006.0]\n", + "2 d [2172.0, 748.0, 1006.0]\n", + "3 d [2172.0, 387.0, 1006.0]\n", + "4 d [2172.0, 387.0, 1006.0]\n", + "5 d [2172.0, 748.0, 1006.0]\n", + "6 d [2172.0, 387.0, 903.0]\n", + "7 d [2172.0, 387.0, 903.0]\n", + "8 d [2172.0, 387.0, 903.0]\n", + "9 d [2172.0, 387.0, 903.0]\n", + "10 d [2172.0, 387.0, 903.0]\n", + "11 d [2172.0, 387.0, 1006.0]\n", + "12 d [2172.0, 387.0, 1006.0]\n", + "13 d [2172.0, 387.0, 1006.0]\n", + "14 d [2172.0, 387.0, 903.0]\n", + "15 d [2172.0, 387.0, 903.0]\n", + "16 d [2172.0, 387.0, 1006.0]\n", + "17 d [2172.0, 387.0, 903.0]\n", + "18 d [2172.0, 748.0, 1006.0]\n", + "19 d [2172.0, 748.0, 1006.0]\n", + "20 d [2172.0, 387.0, 903.0]\n", + "21 d [2172.0, 387.0, 903.0]\n", + "22 d [2172.0, 748.0, 903.0]\n", + "23 d [2172.0, 387.0, 903.0]\n", + "24 d [2172.0, 387.0, 903.0]\n", + "25 d [2172.0, 748.0, 903.0]\n", + "26 d [2172.0, 387.0, 1006.0]\n", + "27 d [2172.0, 748.0, 903.0]\n", + "28 d [2172.0, 748.0, 903.0]\n", + "29 d [2172.0, 748.0, 903.0]\n", + "30 d [2172.0, 387.0, 903.0]\n", + "31 d [2172.0, 748.0, 903.0]\n", + "32 d [2172.0, 748.0, 1006.0]\n", + "33 d [2172.0, 748.0, 903.0]\n", + "34 d [1006.0, 748.0, 825.5]\n", + "35 d [903.0, 748.0, 825.5]\n", + "36 d [1135.0, 748.0, 903.0]\n", + "37 d [2172.0, 903.0, 1006.0]\n", + "38 d [2172.0, 748.0, 903.0]\n", + "39 d [2172.0, 387.0, 748.0]\n", + "40 d [2172.0, 387.0, 748.0]\n", + "41 d [2172.0, 387.0, 903.0]\n", + "42 d [2172.0, 387.0, 748.0]\n", + "43 d [2172.0, 387.0, 903.0]\n", + "44 d [2172.0, 387.0, 748.0]\n", + "45 d [2172.0, 387.0, 825.5]\n", + "46 d [2172.0, 387.0, 748.0]\n", + "47 d [2172.0, 387.0, 903.0]\n", + "48 d [2172.0, 387.0, 748.0]\n", + "49 d [2172.0, 387.0, 748.0]\n", + "50 d [2172.0, 387.0, 748.0]\n", + "51 d [2172.0, 387.0, 748.0]\n", + "52 d [2172.0, 387.0, 748.0]\n", + "53 d [2172.0, 387.0, 748.0]\n", + "54 d [2172.0, 387.0, 748.0]\n", + "55 d [2172.0, 387.0, 748.0]\n", + "56 d [903.0, 387.0, 748.0]\n", + "57 d [2172.0, 387.0, 748.0]\n", + "58 d [2172.0, 387.0, 748.0]\n", + "59 d [2172.0, 387.0, 748.0]\n", + "Name: ČD Praha-Berlín, dtype: object" + ] + }, + "execution_count": 897, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "ukazat[0]" + ] + }, + { + "cell_type": "code", + "execution_count": 930, "id": "6cb8af50-a41f-4d9d-a2c2-fddc243cfb4d", "metadata": {}, "outputs": [ @@ -4059,14 +5160,48 @@ "name": "stdout", "output_type": "stream", "text": [ - "jsem delší\n", - "cena\n", + "ČD Praha-Berlín\n", + "line_ČD Praha-Berlín\n", + "ČD Praha-Varšava\n", + "line_ČD Praha-Varšava\n", + "ČD Praha-Bratislava\n", + "line_ČD Praha-Bratislava\n", + "RJ Praha-Bratislava\n", + "line_RJ Praha-Bratislava\n", + "ČD Praha-Vídeň\n", + "line_ČD Praha-Vídeň\n", + "RJ Praha-Vídeň\n", + "line_RJ Praha-Vídeň\n", + "LE Pardubice-Košice\n", + "line_LE Pardubice-Košice\n", + "RJ Praha-Čop\n", + "line_RJ Praha-Čop\n", + "ČD Praha-Budapešť\n", + "line_ČD Praha-Budapešť\n", + "RJ Praha-Budapešť\n", + "line_RJ Praha-Budapešť\n", + "ČD Praha-Bern\n", + "line_ČD Praha-Bern\n", + "LE Praha-Krakov\n", + "line_LE Praha-Krakov\n", + "line_ČD Praha-Berlín\n", + "line_ČD Praha-Varšava\n", + "line_ČD Praha-Bratislava\n", + "line_RJ Praha-Bratislava\n", + "line_ČD Praha-Vídeň\n", + "line_RJ Praha-Vídeň\n", + "line_LE Pardubice-Košice\n", + "line_RJ Praha-Čop\n", + "line_ČD Praha-Budapešť\n", + "line_RJ Praha-Budapešť\n", + "line_ČD Praha-Bern\n", + "line_LE Praha-Krakov\n", "Graf uložen.\n" ] } ], "source": [ - "irozhlas_graf(rozpeti=[xx], target='pokus', titulek='Střední ceny jízdného do zahraničí v závislosti na předstihu nákupu', podtitulek='Východní zobrazení vybírá jízdenky do hlavních měst okolních zemí, další spoje lze rozkliknout níže.', kredity=['Zdroj dat: e-shopy dopravců v listopadu 2024. Vizualizace: iROZHLAS.cz','https://www.irozhlas.cz/zpravy-tag/datova-zurnalistika'])" + "irozhlas_graf(rozpeti=ukazat, skryte=ukazat[1:], target='pokus', titulek='Mezistátní jízdné podle předstihu nákupu', osaymin=0, podtitulek='Srovnávají se pouze spoje s nejnižším možným počtem přestupů.', kredity=['Zdroj dat: e-shopy dopravců v listopadu 2024. Vizualizace: iROZHLAS.cz','https://www.irozhlas.cz/zpravy-tag/datova-zurnalistika'])" ] } ], diff --git a/grafy/pokus.html b/grafy/pokus.html index 1ad9bc7..b0631fb 100644 --- a/grafy/pokus.html +++ b/grafy/pokus.html @@ -1,4 +1,4 @@ -Stedn ceny jzdnho do zahrani v zvislosti na pedstihu nkupu +Mezisttn jzdn podle pedstihu nkupu
@@ -13,363 +13,2477 @@ '#ffee65', '#beb9db', '#fdcce5', -'#8bd3c7'], +'#8bd3c7', +'red', +'blue', +'purple'], credits: { enabled: true, href: 'https://www.irozhlas.cz/zpravy-tag/datova-zurnalistika', text: 'Zdroj dat: e-shopy dopravc v listopadu 2024. Vizualizace: iROZHLAS.cz' }, series: [{ - data: [[800.0], + data: [[1522.0], +[1006.0], +[1006.0], +[1006.0], +[1006.0], +[1006.0], +[903.0], +[903.0], +[903.0], +[903.0], +[903.0], +[1006.0], +[1006.0], +[1006.0], +[903.0], +[903.0], +[1006.0], +[903.0], +[1006.0], +[1006.0], +[903.0], +[903.0], +[903.0], +[903.0], +[903.0], +[903.0], +[1006.0], +[903.0], +[903.0], +[903.0], +[903.0], +[903.0], +[1006.0], +[903.0], +[825.5], +[825.5], +[903.0], +[1006.0], +[903.0], +[748.0], +[748.0], +[903.0], +[748.0], +[903.0], +[748.0], +[825.5], +[748.0], +[903.0], +[748.0], +[748.0], +[748.0], +[748.0], +[748.0], +[748.0], +[748.0], +[748.0], +[748.0], +[748.0], +[748.0], +[748.0]], + id: 'line_D Praha-Berln', + name: 'D Praha-Berln', + yAxis: 0, + color: '#b2e061', + tooltip: { + valuePrefix: 'stedn: ', + valueSuffix: ' K' +}, + visible: true, + type: 'line' +}, +{ + data: [[2172.0, +877.0], +[2172.0, +877.0], +[2172.0, +748.0], +[2172.0, +387.0], +[2172.0, +387.0], +[2172.0, +748.0], +[2172.0, +387.0], +[2172.0, +387.0], +[2172.0, +387.0], +[2172.0, +387.0], +[2172.0, +387.0], +[2172.0, +387.0], +[2172.0, +387.0], +[2172.0, +387.0], +[2172.0, +387.0], +[2172.0, +387.0], +[2172.0, +387.0], +[2172.0, +387.0], +[2172.0, +748.0], +[2172.0, +748.0], +[2172.0, +387.0], +[2172.0, +387.0], +[2172.0, +748.0], +[2172.0, +387.0], +[2172.0, +387.0], +[2172.0, +748.0], +[2172.0, +387.0], +[2172.0, +748.0], +[2172.0, +748.0], +[2172.0, +748.0], +[2172.0, +387.0], +[2172.0, +748.0], +[2172.0, +748.0], +[2172.0, +748.0], +[1006.0, +748.0], +[903.0, +748.0], +[1135.0, +748.0], +[2172.0, +903.0], +[2172.0, +748.0], +[2172.0, +387.0], +[2172.0, +387.0], +[2172.0, +387.0], +[2172.0, +387.0], +[2172.0, +387.0], +[2172.0, +387.0], +[2172.0, +387.0], +[2172.0, +387.0], +[2172.0, +387.0], +[2172.0, +387.0], +[2172.0, +387.0], +[2172.0, +387.0], +[2172.0, +387.0], +[2172.0, +387.0], +[2172.0, +387.0], +[2172.0, +387.0], +[2172.0, +387.0], +[903.0, +387.0], +[2172.0, +387.0], +[2172.0, +387.0], +[2172.0, +387.0]], + name: 'D Praha-Berln', + yAxis: 0, + color: '#b2e061', + marker: { + enabled: false +}, + tooltip: { + shared: false, + valuePrefix: 'nejni a nejvy: ', + valueSuffix: ' K' +}, + visible: true, + type: 'arearange',linkedTo: 'line_D Praha-Berln', fillOpacity: 0.3, lineWidth: 0, +}, +{ + data: [[1058.0], +[1058.0], +[1058.0], [800.0], [800.0], -[671.0], -[671.0], -[671.0], -[516.0], -[503.0], +[800.0], +[800.0], +[800.0], +[800.0], +[800.0], +[774.0], +[645.0], +[774.0], +[774.0], +[645.0], +[645.0], +[645.0], +[774.0], +[774.0], +[645.0], +[645.0], +[645.0], +[645.0], [490.0], +[709.5], +[645.0], +[774.0], +[645.0], +[645.0], +[645.0], +[645.0], +[774.0], +[774.0], +[645.0], +[645.0], +[645.0], [490.0], -[706.0], -[533.5], -[706.0], -[671.0], -[611.0], -[551.0], -[790.0], -[845.0], -[790.0], -[1084.0], -[470.0], -[418.0], -[800.0], -[396.0], -[835.0], -[671.0], -[832.0], -[551.0], +[709.5], +[645.0], +[645.0], +[567.5], [490.0], -[585.0], -[671.0], -[800.0], -[993.5], -[692.5], -[799.0], -[890.0], -[814.5], -[587.5], -[671.0], -[616.0], -[551.0], -[551.0], -[546.5], -[671.0], -[679.0], -[534.5], -[359.5], -[279.0], -[479.0], -[299.0], -[289.0], -[279.0], +[567.5], +[645.0], +[645.0], +[490.0], +[490.0], +[645.0], +[645.0], +[490.0], +[490.0], +[490.0], +[490.0], +[490.0], +[490.0], +[490.0], +[567.5], +[490.0], +[490.0], +[490.0]], + id: 'line_D Praha-Varava', + name: 'D Praha-Varava', + yAxis: 0, + color: '#7eb0d5', + tooltip: { + valuePrefix: 'stedn: ', + valueSuffix: ' K' +}, + visible: false, + type: 'line' +}, +{ + data: [[1600.0, +1058.0], +[1907.0, +1058.0], +[1907.0, +490.0], +[1600.0, +490.0], +[1471.0, +490.0], +[1600.0, +490.0], +[1600.0, +490.0], +[1600.0, +490.0], +[1600.0, +490.0], +[1471.0, +490.0], +[1471.0, +490.0], +[929.0, +490.0], +[1471.0, +490.0], +[1471.0, +490.0], +[1187.0, +490.0], +[1187.0, +490.0], +[1187.0, +490.0], +[1471.0, +490.0], +[1187.0, +490.0], +[1907.0, +490.0], +[1058.0, +490.0], +[1058.0, +490.0], +[800.0, +490.0], +[929.0, +490.0], +[1187.0, +490.0], +[1187.0, +490.0], +[1187.0, +490.0], +[1187.0, +490.0], +[1058.0, +490.0], +[1471.0, +490.0], +[1058.0, +490.0], +[1058.0, +490.0], +[800.0, +490.0], +[1058.0, +490.0], +[1471.0, +490.0], +[645.0, +490.0], +[774.0, +490.0], +[1058.0, +490.0], +[1058.0, +490.0], +[800.0, +490.0], +[645.0, +490.0], +[645.0, +490.0], +[800.0, +490.0], +[800.0, +490.0], +[1058.0, +490.0], +[800.0, +490.0], +[800.0, +490.0], +[1058.0, +490.0], +[645.0, +490.0], +[800.0, +490.0], +[800.0, +490.0], +[800.0, +490.0], +[645.0, +490.0], +[645.0, +490.0], +[645.0, +490.0], +[645.0, +490.0], +[645.0, +490.0], +[645.0, +490.0], +[645.0, +490.0], +[645.0, +490.0]], + name: 'D Praha-Varava', + yAxis: 0, + color: '#7eb0d5', + marker: { + enabled: false +}, + tooltip: { + shared: false, + valuePrefix: 'nejni a nejvy: ', + valueSuffix: ' K' +}, + visible: false, + type: 'arearange',linkedTo: 'line_D Praha-Varava', fillOpacity: 0.3, lineWidth: 0, +}, +{ + data: [[632.0], +[632.0], +[632.0], +[632.0], +[490.0], +[490.0], +[490.0], +[490.0], +[490.0], +[490.0], +[490.0], +[490.0], +[490.0], +[490.0], +[490.0], +[400.0], +[490.0], +[490.0], +[400.0], +[400.0], +[445.0], +[400.0], +[400.0], +[400.0], +[400.0], +[400.0], +[400.0], +[400.0], +[400.0], +[400.0], +[400.0], +[400.0], +[400.0], +[400.0], +[400.0], +[400.0], +[400.0], +[400.0], +[400.0], +[400.0], +[400.0], +[400.0], +[400.0], +[400.0], +[400.0], +[400.0], +[400.0], +[400.0], +[400.0], +[400.0], +[400.0], +[400.0], +[400.0], +[400.0], +[400.0], +[400.0], +[400.0], +[400.0], +[400.0], +[400.0]], + id: 'line_D Praha-Bratislava', + name: 'D Praha-Bratislava', + yAxis: 0, + color: '#fd7f6f', + tooltip: { + valuePrefix: 'stedn: ', + valueSuffix: ' K' +}, + visible: false, + type: 'line' +}, +{ + data: [[1047.0, +400.0], +[1047.0, +400.0], +[1047.0, +400.0], +[1047.0, +400.0], +[1047.0, +400.0], +[1047.0, +400.0], +[1047.0, +400.0], +[722.0, +400.0], +[722.0, +400.0], +[722.0, +400.0], +[722.0, +400.0], +[1047.0, +400.0], +[1047.0, +400.0], +[1047.0, +400.0], +[1047.0, +400.0], +[722.0, +400.0], +[1047.0, +400.0], +[1047.0, +400.0], +[722.0, +400.0], +[1047.0, +400.0], +[1047.0, +400.0], +[1047.0, +400.0], +[722.0, +400.0], +[722.0, +400.0], +[1047.0, +400.0], +[722.0, +400.0], +[722.0, +400.0], +[632.0, +400.0], +[722.0, +400.0], +[722.0, +400.0], +[722.0, +400.0], +[632.0, +400.0], +[722.0, +400.0], +[400.0, +400.0], +[632.0, +400.0], +[632.0, +400.0], +[490.0, +400.0], +[632.0, +400.0], +[632.0, +400.0], +[490.0, +400.0], +[400.0, +400.0], +[490.0, +400.0], +[490.0, +400.0], +[490.0, +400.0], +[400.0, +400.0], +[490.0, +400.0], +[490.0, +400.0], +[400.0, +400.0], +[490.0, +400.0], +[490.0, +400.0], +[490.0, +400.0], +[490.0, +400.0], +[490.0, +400.0], +[400.0, +400.0], +[490.0, +400.0], +[490.0, +400.0], +[400.0, +400.0], +[400.0, +400.0], +[400.0, +400.0], +[400.0, +400.0]], + name: 'D Praha-Bratislava', + yAxis: 0, + color: '#fd7f6f', + marker: { + enabled: false +}, + tooltip: { + shared: false, + valuePrefix: 'nejni a nejvy: ', + valueSuffix: ' K' +}, + visible: false, + type: 'arearange',linkedTo: 'line_D Praha-Bratislava', fillOpacity: 0.3, lineWidth: 0, +}, +{ + data: [[429.0], +[429.0], +[429.0], +[429.0], +[429.0], +[429.0], +[429.0], +[429.0], +[429.0], +[429.0], +[429.0], +[429.0], +[429.0], +[429.0], +[429.0], +[429.0], +[429.0], +[429.0], +[349.0], +[429.0], +[429.0], +[429.0], +[429.0], +[429.0], +[429.0], +[429.0], +[529.0], +[529.0], +[529.0], +[639.0], +[529.0], +[639.0], +[429.0], +[529.0], +[529.0], +[584.0], +[529.0], [529.0], +[479.0], +[639.0], +[479.0], +[429.0], +[429.0], +[429.0], +[429.0], +[429.0], +[429.0], +[429.0], +[429.0], +[429.0], +[389.0], +[429.0], +[389.0], +[479.0]], + id: 'line_RJ Praha-Bratislava', + name: 'RJ Praha-Bratislava', + yAxis: 0, + color: '#bd7ebe', + tooltip: { + valuePrefix: 'stedn: ', + valueSuffix: ' K' +}, + visible: false, + type: 'line' +}, +{ + data: [[679.0, +279.0], +[949.0, +279.0], +[949.0, +279.0], +[949.0, +279.0], +[949.0, +279.0], +[949.0, +279.0], +[639.0, +279.0], +[639.0, +279.0], +[639.0, +279.0], +[639.0, +279.0], +[639.0, +279.0], +[639.0, +279.0], +[639.0, +279.0], +[639.0, +279.0], +[639.0, +279.0], +[639.0, +279.0], +[639.0, +279.0], +[779.0, +279.0], +[639.0, +279.0], +[799.0, +279.0], +[639.0, +279.0], +[639.0, +279.0], +[949.0, +279.0], +[699.0, +279.0], +[639.0, +279.0], +[639.0, +279.0], +[639.0, +349.0], +[639.0, +279.0], +[949.0, +349.0], +[799.0, +429.0], +[639.0, +429.0], +[639.0, +429.0], +[699.0, +279.0], +[639.0, +349.0], +[949.0, +349.0], +[639.0, +349.0], +[639.0, +349.0], +[699.0, +349.0], +[639.0, +349.0], +[639.0, +349.0], +[639.0, +349.0], +[639.0, +279.0], +[639.0, +279.0], +[639.0, +349.0], +[529.0, +279.0], +[639.0, +349.0], +[639.0, +349.0], +[639.0, +349.0], +[529.0, +279.0], +[639.0, +349.0], +[429.0, +349.0], +[529.0, +349.0], +[429.0, +349.0], +[529.0, +349.0]], + name: 'RJ Praha-Bratislava', + yAxis: 0, + color: '#bd7ebe', + marker: { + enabled: false +}, + tooltip: { + shared: false, + valuePrefix: 'nejni a nejvy: ', + valueSuffix: ' K' +}, + visible: false, + type: 'arearange',linkedTo: 'line_RJ Praha-Bratislava', fillOpacity: 0.3, lineWidth: 0, +}, +{ + data: [[903.0], +[903.0], +[903.0], +[645.0], +[903.0], +[645.0], +[645.0], +[645.0], +[645.0], +[645.0], +[645.0], +[903.0], +[774.0], +[645.0], +[903.0], +[903.0], +[903.0], +[645.0], +[645.0], +[645.0], +[645.0], +[645.0], [516.0], [516.0], +[903.0], +[645.0], +[645.0], +[645.0], +[645.0], +[645.0], +[645.0], +[774.0], +[903.0], +[645.0], +[903.0], [516.0], -[299.0], -[279.0], +[645.0], +[645.0], +[516.0], +[516.0], +[516.0], +[645.0], +[516.0], +[516.0], +[516.0], +[516.0], +[516.0], +[516.0], +[645.0], +[516.0], +[516.0], +[516.0], +[516.0], +[516.0], +[516.0], +[451.5], +[387.0], +[516.0], +[387.0], +[516.0]], + id: 'line_D Praha-Vde', + name: 'D Praha-Vde', + yAxis: 0, + color: '#ffb55a', + tooltip: { + valuePrefix: 'stedn: ', + valueSuffix: ' K' +}, + visible: false, + type: 'line' +}, +{ + data: [[1406.0, +645.0], +[1161.0, +645.0], +[1406.0, +387.0], +[1406.0, +387.0], +[1406.0, +387.0], +[1406.0, +387.0], +[1406.0, +387.0], +[1406.0, +387.0], +[1406.0, +387.0], +[1161.0, +387.0], +[1406.0, +387.0], +[1406.0, +387.0], +[1406.0, +387.0], +[1406.0, +387.0], +[1161.0, +387.0], +[1406.0, +387.0], +[1161.0, +387.0], +[1406.0, +387.0], +[1161.0, +387.0], +[1161.0, +387.0], +[1161.0, +387.0], +[1161.0, +387.0], +[903.0, +387.0], +[645.0, +387.0], +[1161.0, +387.0], +[1161.0, +387.0], +[1161.0, +387.0], +[1161.0, +387.0], +[1416.0, +387.0], +[1161.0, +387.0], +[1416.0, +387.0], +[1161.0, +387.0], +[903.0, +903.0], +[903.0, +387.0], +[1161.0, +387.0], +[903.0, +387.0], +[1161.0, +387.0], +[1032.0, +387.0], +[903.0, +387.0], +[645.0, +387.0], +[1416.0, +387.0], +[1416.0, +387.0], +[1545.0, +387.0], +[1416.0, +387.0], +[1416.0, +387.0], +[1416.0, +387.0], +[1416.0, +387.0], +[903.0, +387.0], +[1416.0, +387.0], +[903.0, +387.0], +[1416.0, +387.0], +[900.0, +387.0], +[645.0, +387.0], +[645.0, +387.0], +[645.0, +387.0], +[645.0, +387.0], +[645.0, +387.0], +[645.0, +387.0], +[516.0, +387.0], +[516.0, +387.0]], + name: 'D Praha-Vde', + yAxis: 0, + color: '#ffb55a', + marker: { + enabled: false +}, + tooltip: { + shared: false, + valuePrefix: 'nejni a nejvy: ', + valueSuffix: ' K' +}, + visible: false, + type: 'arearange',linkedTo: 'line_D Praha-Vde', fillOpacity: 0.3, lineWidth: 0, +}, +{ + data: [[549.0], +[549.0], +[549.0], +[599.0], +[549.0], +[599.0], +[549.0], +[459.0], +[459.0], +[459.0], +[459.0], +[599.0], +[599.0], +[599.0], +[459.0], +[599.0], +[599.0], +[599.0], +[599.0], +[599.0], +[599.0], +[599.0], +[599.0], +[599.0], +[599.0], +[599.0], +[599.0], +[669.0], +[599.0], +[739.0], +[739.0], +[739.0], +[739.0], +[669.0], +[739.0], +[669.0], +[669.0], +[739.0], +[739.0], +[599.0], +[739.0], +[599.0], +[739.0], +[739.0], +[669.0], +[599.0], +[599.0], +[599.0], +[739.0], +[599.0], +[459.0], +[459.0], +[529.0]], + id: 'line_RJ Praha-Vde', + name: 'RJ Praha-Vde', + yAxis: 0, + color: '#ffee65', + tooltip: { + valuePrefix: 'stedn: ', + valueSuffix: ' K' +}, + visible: false, + type: 'line' +}, +{ + data: [[1149.0, +299.0], +[999.0, +299.0], +[1149.0, +299.0], +[799.0, +299.0], +[799.0, +299.0], +[799.0, +299.0], +[999.0, +299.0], +[799.0, +299.0], +[799.0, +299.0], +[799.0, +299.0], +[799.0, +299.0], +[799.0, +299.0], +[799.0, +299.0], +[799.0, +379.0], +[739.0, +299.0], +[799.0, +379.0], +[799.0, +299.0], +[799.0, +299.0], +[999.0, +299.0], +[1149.0, +299.0], +[1149.0, +379.0], +[799.0, +299.0], +[1149.0, +299.0], +[999.0, +379.0], +[799.0, +299.0], +[799.0, +379.0], +[799.0, +379.0], +[799.0, +379.0], +[799.0, +379.0], +[739.0, +459.0], +[739.0, +379.0], +[739.0, +459.0], +[739.0, +379.0], +[739.0, +379.0], +[739.0, +459.0], +[739.0, +379.0], +[739.0, +459.0], +[739.0, +459.0], +[799.0, +379.0], +[739.0, +379.0], +[739.0, +459.0], +[799.0, +379.0], +[739.0, +459.0], +[799.0, +459.0], +[799.0, +379.0], +[739.0, +459.0], +[799.0, +379.0], +[739.0, +379.0], +[739.0, +379.0], +[739.0, +379.0], +[599.0, +379.0], +[599.0, +379.0], +[599.0, +379.0]], + name: 'RJ Praha-Vde', + yAxis: 0, + color: '#ffee65', + marker: { + enabled: false +}, + tooltip: { + shared: false, + valuePrefix: 'nejni a nejvy: ', + valueSuffix: ' K' +}, + visible: false, + type: 'arearange',linkedTo: 'line_RJ Praha-Vde', fillOpacity: 0.3, lineWidth: 0, +}, +{ + data: [[919.0], +[969.0], +[909.0], +[819.0], +[679.0], +[824.0], +[679.0], +[649.0], +[679.0], +[534.0], +[719.0], +[929.0], +[699.0], +[749.0], +[649.0], +[679.0], +[669.0], +[319.0], +[479.0], +[539.0], +[679.0], +[559.0], +[559.0], +[329.0], +[879.0], +[669.0], +[794.0], +[664.0], +[659.0], +[479.0], +[594.0], +[879.0], +[559.0], +[649.0], +[399.0], +[339.0], +[499.0], +[329.0], +[539.0], +[319.0], +[624.0], +[749.0], +[464.0], +[449.0], +[319.0], +[569.0], +[319.0], +[319.0], +[534.0], +[329.0], +[319.0], +[449.0], +[319.0], +[309.0], +[329.0], +[309.0], +[329.0], +[319.0], +[309.0], +[299.0]], + id: 'line_LE Pardubice-Koice', + name: 'LE Pardubice-Koice', + yAxis: 0, + color: '#beb9db', + tooltip: { + valuePrefix: 'stedn: ', + valueSuffix: ' K' +}, + visible: false, + type: 'line' +}, +{ + data: [[1889.0, +319.0], +[2239.0, +319.0], +[2239.0, +319.0], +[1769.0, +299.0], +[2009.0, +319.0], +[1639.0, +299.0], +[1639.0, +299.0], +[1639.0, +309.0], +[1449.0, +319.0], +[1639.0, +299.0], +[1719.0, +299.0], +[2989.0, +319.0], +[2679.0, +319.0], +[1639.0, +309.0], +[1379.0, +319.0], +[1379.0, +319.0], +[1069.0, +299.0], +[649.0, +299.0], +[1329.0, +319.0], +[1689.0, +299.0], +[1719.0, +299.0], +[1499.0, +319.0], +[1149.0, +309.0], +[899.0, +299.0], +[1639.0, +319.0], +[1639.0, +299.0], +[1449.0, +299.0], +[1379.0, +309.0], +[1599.0, +309.0], +[789.0, +309.0], +[1539.0, +299.0], +[1489.0, +299.0], +[949.0, +319.0], +[679.0, +539.0], +[469.0, +329.0], +[469.0, +329.0], +[1489.0, +329.0], +[839.0, +319.0], +[539.0, +539.0], +[709.0, +299.0], +[839.0, +469.0], +[879.0, +539.0], +[1449.0, +299.0], +[679.0, +299.0], +[319.0, +319.0], +[569.0, +569.0], +[769.0, +299.0], +[729.0, +299.0], +[759.0, +309.0], +[479.0, +299.0], +[479.0, +299.0], +[569.0, +329.0], +[729.0, +299.0], +[319.0, +299.0], +[329.0, +329.0], +[329.0, +309.0], +[329.0, +329.0], +[399.0, +299.0], +[319.0, +299.0], +[319.0, +299.0]], + name: 'LE Pardubice-Koice', + yAxis: 0, + color: '#beb9db', + marker: { + enabled: false +}, + tooltip: { + shared: false, + valuePrefix: 'nejni a nejvy: ', + valueSuffix: ' K' +}, + visible: false, + type: 'arearange',linkedTo: 'line_LE Pardubice-Koice', fillOpacity: 0.3, lineWidth: 0, +}, +{ + data: [[499.0], +[499.0], +[499.0], +[499.0], +[499.0], +[499.0], +[499.0], +[599.0], +[599.0], +[499.0], +[549.0], +[499.0], +[499.0], +[499.0], +[549.0], +[599.0], +[599.0], +[499.0], +[499.0], +[499.0], +[499.0], +[499.0], +[599.0], +[599.0], +[599.0], +[499.0], +[749.0], +[899.0], +[899.0], +[599.0], +[599.0], +[599.0], +[699.0], +[899.0], +[899.0], +[899.0], +[899.0], +[899.0], +[899.0], +[899.0], +[899.0], +[899.0], +[899.0], +[699.0], +[699.0], +[599.0], +[699.0]], + id: 'line_RJ Praha-op', + name: 'RJ Praha-op', + yAxis: 0, + color: '#fdcce5', + tooltip: { + valuePrefix: 'stedn: ', + valueSuffix: ' K' +}, + visible: false, + type: 'line' +}, +{ + data: [[599.0, +499.0], +[599.0, +499.0], +[599.0, +499.0], +[599.0, +499.0], +[599.0, +499.0], +[599.0, +499.0], +[599.0, +499.0], +[599.0, +499.0], +[599.0, +499.0], +[599.0, +499.0], +[599.0, +499.0], +[599.0, +499.0], +[599.0, +499.0], +[599.0, +499.0], +[599.0, +499.0], +[599.0, +499.0], +[599.0, +499.0], +[599.0, +499.0], +[599.0, +499.0], +[599.0, +499.0], +[599.0, +499.0], +[599.0, +499.0], +[599.0, +499.0], +[599.0, +499.0], +[599.0, +499.0], +[699.0, +499.0], +[899.0, +599.0], +[899.0, +899.0], +[899.0, +899.0], +[599.0, +599.0], +[599.0, +599.0], +[599.0, +599.0], +[699.0, +699.0], +[899.0, +899.0], +[899.0, +899.0], +[899.0, +899.0], +[899.0, +899.0], +[899.0, +899.0], +[899.0, +899.0], +[899.0, +899.0], +[899.0, +899.0], +[899.0, +899.0], +[899.0, +899.0], +[699.0, +699.0], +[699.0, +699.0], +[599.0, +599.0], +[699.0, +699.0]], + name: 'RJ Praha-op', + yAxis: 0, + color: '#fdcce5', + marker: { + enabled: false +}, + tooltip: { + shared: false, + valuePrefix: 'nejni a nejvy: ', + valueSuffix: ' K' +}, + visible: false, + type: 'arearange',linkedTo: 'line_RJ Praha-op', fillOpacity: 0.3, lineWidth: 0, +}, +{ + data: [[903.0], +[903.0], +[903.0], +[697.0], +[697.0], +[697.0], +[697.0], +[697.0], +[697.0], +[697.0], +[697.0], +[697.0], +[697.0], +[697.0], +[697.0], +[697.0], +[697.0], +[697.0], +[697.0], +[697.0], +[697.0], +[697.0], +[697.0], +[697.0], +[697.0], +[697.0], +[697.0], +[697.0], +[697.0], +[697.0], +[697.0], +[697.0], +[606.0], +[606.0], +[606.0], +[697.0], +[697.0], +[697.0], +[800.0], +[606.0], +[606.0], +[606.0], +[606.0], +[606.0], +[606.0], +[606.0], +[697.0], +[606.0], +[606.0], +[606.0], +[606.0], +[606.0], +[606.0], +[606.0], +[606.0], +[606.0], +[606.0], +[606.0], +[606.0], +[606.0]], + id: 'line_D Praha-Budape', + name: 'D Praha-Budape', + yAxis: 0, + color: '#8bd3c7', + tooltip: { + valuePrefix: 'stedn: ', + valueSuffix: ' K' +}, + visible: false, + type: 'line' +}, +{ + data: [[1664.0, +903.0], +[1664.0, +903.0], +[1664.0, +606.0], +[1664.0, +606.0], +[1664.0, +606.0], +[1664.0, +606.0], +[1664.0, +606.0], +[1664.0, +606.0], +[1664.0, +606.0], +[1664.0, +606.0], +[1664.0, +606.0], +[1664.0, +606.0], +[1664.0, +606.0], +[1664.0, +606.0], +[1664.0, +606.0], +[1664.0, +606.0], +[1664.0, +606.0], +[1664.0, +606.0], +[1664.0, +606.0], +[1664.0, +606.0], +[1664.0, +606.0], +[1664.0, +606.0], +[1664.0, +606.0], +[1664.0, +606.0], +[1664.0, +606.0], +[1664.0, +606.0], +[1664.0, +606.0], +[1664.0, +606.0], +[1109.0, +606.0], +[1664.0, +606.0], +[1109.0, +606.0], +[1109.0, +606.0], +[903.0, +606.0], +[903.0, +606.0], +[1109.0, +606.0], +[903.0, +606.0], +[903.0, +606.0], +[1109.0, +606.0], +[903.0, +606.0], +[606.0, +606.0], +[697.0, +606.0], +[903.0, +606.0], +[697.0, +606.0], +[1109.0, +606.0], +[903.0, +606.0], +[697.0, +606.0], +[903.0, +606.0], +[606.0, +606.0], +[697.0, +606.0], +[903.0, +606.0], +[903.0, +606.0], +[903.0, +606.0], +[606.0, +606.0], +[606.0, +606.0], +[606.0, +606.0], +[697.0, +606.0], +[606.0, +606.0], +[606.0, +606.0], +[606.0, +606.0], +[697.0, +606.0]], + name: 'D Praha-Budape', + yAxis: 0, + color: '#8bd3c7', + marker: { + enabled: false +}, + tooltip: { + shared: false, + valuePrefix: 'nejni a nejvy: ', + valueSuffix: ' K' +}, + visible: false, + type: 'arearange',linkedTo: 'line_D Praha-Budape', fillOpacity: 0.3, lineWidth: 0, +}, +{ + data: [[679.0], +[679.0], +[679.0], +[679.0], +[799.0], +[679.0], +[679.0], +[679.0], +[679.0], +[679.0], +[669.0], +[679.0], +[679.0], +[679.0], +[679.0], +[679.0], +[679.0], +[679.0], +[679.0], +[679.0], +[679.0], +[679.0], +[799.0], +[799.0], +[679.0], +[679.0], +[679.0], +[799.0], +[849.0], +[849.0], +[849.0], +[799.0], +[824.0], +[849.0], +[849.0], +[849.0], +[849.0], +[849.0], +[849.0], +[849.0], +[849.0], +[849.0], +[849.0], +[849.0], +[849.0], +[849.0], +[849.0], +[849.0], +[849.0], +[849.0], +[849.0], +[849.0], +[739.0], +[679.0], +[679.0], +[679.0], +[679.0], +[679.0], +[679.0], +[559.0]], + id: 'line_RJ Praha-Budape', + name: 'RJ Praha-Budape', + yAxis: 0, + color: 'red', + tooltip: { + valuePrefix: 'stedn: ', + valueSuffix: ' K' +}, + visible: false, + type: 'line' +}, +{ + data: [[1249.0, +399.0], +[1249.0, +399.0], +[1399.0, +399.0], +[999.0, +399.0], +[999.0, +469.0], +[1399.0, +399.0], +[999.0, +399.0], +[999.0, +399.0], +[999.0, +399.0], +[999.0, +399.0], +[1399.0, +399.0], +[1399.0, +399.0], +[1399.0, +399.0], +[999.0, +399.0], +[999.0, +399.0], +[999.0, +399.0], +[1249.0, +399.0], +[999.0, +399.0], +[999.0, +469.0], +[999.0, +399.0], +[1249.0, +399.0], +[999.0, +479.0], +[999.0, +549.0], +[1249.0, +559.0], +[1249.0, +399.0], +[999.0, +399.0], +[999.0, +399.0], +[999.0, +559.0], +[999.0, +679.0], +[999.0, +559.0], +[1249.0, +559.0], +[849.0, +559.0], +[849.0, +559.0], +[849.0, +559.0], +[849.0, +559.0], +[849.0, +559.0], +[999.0, +559.0], +[999.0, +559.0], +[999.0, +559.0], +[999.0, +559.0], +[999.0, +559.0], +[999.0, +679.0], +[999.0, +679.0], +[849.0, +679.0], +[999.0, +679.0], +[999.0, +559.0], +[999.0, +469.0], +[999.0, +469.0], +[999.0, +559.0], +[999.0, +469.0], +[999.0, +679.0], +[999.0, +679.0], +[999.0, +559.0], +[999.0, +469.0], +[849.0, +469.0], +[999.0, +559.0], +[849.0, +469.0], +[679.0, +559.0], +[679.0, +469.0], +[679.0, +469.0]], + name: 'RJ Praha-Budape', + yAxis: 0, + color: 'red', + marker: { + enabled: false +}, + tooltip: { + shared: false, + valuePrefix: 'nejni a nejvy: ', + valueSuffix: ' K' +}, + visible: false, + type: 'arearange',linkedTo: 'line_RJ Praha-Budape', fillOpacity: 0.3, lineWidth: 0, +}, +{ + data: [[6533.0], +[2838.0], +[2838.0], +[2477.0], +[2477.0], +[2477.0], +[2477.0], +[2477.0], +[2477.0], +[2477.0], +[2477.0], +[2477.0], +[2477.0], +[2477.0], +[2477.0], +[2477.0], +[2477.0], +[3044.5], +[2477.0], +[2477.0], +[2477.0], +[2477.0], +[2477.0], +[2477.0], +[2477.0], +[2477.0], +[2477.0], +[2477.0], +[2477.0], +[2477.0], +[2477.0], +[2477.0], +[2477.0], +[2477.0], +[2477.0], +[2477.0], +[2477.0], +[2477.0], +[2477.0], +[2477.0], +[2477.0], +[2477.0], +[2477.0], +[2477.0], +[2477.0], +[2477.0], +[2477.0], +[2477.0], +[2477.0], +[2477.0], +[2477.0], +[2477.0], +[2477.0], +[2477.0]], + id: 'line_D Praha-Bern', + name: 'D Praha-Bern', + yAxis: 0, + color: 'blue', + tooltip: { + valuePrefix: 'stedn: ', + valueSuffix: ' K' +}, + visible: false, + type: 'line' +}, +{ + data: [[6533.0, +6533.0], +[2838.0, +2838.0], +[3225.0, +2838.0], +[3225.0, +2477.0], +[3225.0, +2477.0], +[3225.0, +2477.0], +[3612.0, +2477.0], +[3225.0, +2477.0], +[3225.0, +2477.0], +[3225.0, +2477.0], +[3612.0, +2477.0], +[3225.0, +2477.0], +[3638.0, +2477.0], +[3225.0, +2477.0], +[3612.0, +2477.0], +[3612.0, +2477.0], +[3612.0, +2477.0], +[3612.0, +2477.0], +[2477.0, +2477.0], +[2838.0, +2477.0], +[3612.0, +2477.0], +[3225.0, +2477.0], +[3612.0, +2477.0], +[2477.0, +2477.0], +[2477.0, +2477.0], +[2477.0, +2477.0], +[2477.0, +2477.0], +[2477.0, +2477.0], +[2477.0, +2477.0], +[3612.0, +2477.0], +[3612.0, +2477.0], +[2477.0, +2477.0], +[2477.0, +2477.0], +[2477.0, +2477.0], +[2477.0, +2477.0], +[2477.0, +2477.0], +[2477.0, +2477.0], +[2477.0, +2477.0], +[2477.0, +2477.0], +[2477.0, +2477.0], +[2477.0, +2477.0], +[2477.0, +2477.0], +[2477.0, +2477.0], +[2477.0, +2477.0], +[2477.0, +2477.0], +[2477.0, +2477.0], +[2477.0, +2477.0], +[2477.0, +2477.0], +[2477.0, +2477.0], +[2477.0, +2477.0], +[2477.0, +2477.0], +[2477.0, +2477.0], +[2477.0, +2477.0], +[2477.0, +2477.0]], + name: 'D Praha-Bern', + yAxis: 0, + color: 'blue', + marker: { + enabled: false +}, + tooltip: { + shared: false, + valuePrefix: 'nejni a nejvy: ', + valueSuffix: ' K' +}, + visible: false, + type: 'arearange',linkedTo: 'line_D Praha-Bern', fillOpacity: 0.3, lineWidth: 0, +}, +{ + data: [[1419.0], +[1374.0], +[1404.0], +[1319.0], +[1399.0], +[1479.0], +[1229.0], +[1279.0], +[1209.0], +[1139.0], +[964.0], +[1199.0], +[1109.0], +[839.0], +[909.0], +[909.0], +[1199.0], +[1244.0], +[1014.0], +[1174.0], +[1419.0], +[864.0], +[924.0], +[1059.0], +[1319.0], +[499.0], +[924.0], +[779.0], +[709.0], +[609.0], +[499.0], +[619.0], +[589.0], [279.0], -[0.0], -[0.0], -[289.0], +[709.0], +[489.0], +[479.0], [299.0], +[499.0], [279.0], [279.0], +[394.0], [279.0], -[279.0], -[279.0], +[359.0], +[329.0], [289.0], -[284.0], [279.0], +[349.0], +[359.0], +[349.0], [289.0], -[279.0], -[0.0], -[279.0], -[279.0], -[279.0], -[299.0], -[0.0], -[279.0], -[279.0]], - name: 'cena', +[439.0], +[339.0], +[349.0], +[324.0], +[419.0], +[359.0], +[289.0], +[339.0], +[359.0]], + id: 'line_LE Praha-Krakov', + name: 'LE Praha-Krakov', yAxis: 0, - color: '#fd7f6f', - visible: true, + color: 'purple', + tooltip: { + valuePrefix: 'stedn: ', + valueSuffix: ' K' +}, + visible: false, type: 'line' }, { data: [[1679.0, -440.0], +909.0], [1809.0, -440.0], +909.0], [1569.0, -361.0], +799.0], [1599.0, -361.0], +799.0], [1519.0, -361.0], +1279.0], [1519.0, -361.0], -[1479.0, -361.0], +1229.0], +[1409.0, +639.0], [1279.0, -361.0], +1229.0], [1279.0, -361.0], +609.0], [1209.0, -361.0], -[1476.0, -361.0], +609.0], +[1319.0, +609.0], +[1349.0, +609.0], +[1319.0, +819.0], [1279.0, -361.0], -[1473.0, -361.0], +639.0], [1279.0, -361.0], -[1476.0, -361.0], -[1396.0, -361.0], -[1476.0, -361.0], -[1476.0, -490.0], -[1396.0, -361.0], -[1396.0, -440.0], -[1349.0, -361.0], -[1008.0, -361.0], +609.0], +[1209.0, +609.0], +[1419.0, +909.0], +[1419.0, +719.0], +[1419.0, +609.0], [1279.0, -361.0], -[1084.0, -361.0], -[1396.0, -361.0], -[1396.0, -361.0], -[1396.0, -361.0], +1069.0], +[1419.0, +1419.0], +[1119.0, +609.0], [1349.0, -361.0], -[1084.0, -361.0], -[890.0, -361.0], -[890.0, -361.0], -[1600.0, -516.0], -[1154.0, -551.0], -[890.0, +499.0], +[1419.0, +519.0], +[1419.0, +1069.0], +[799.0, +499.0], +[1229.0, +619.0], +[779.0, +779.0], +[739.0, 419.0], -[890.0, +[799.0, 419.0], -[890.0, -890.0], -[890.0, -739.0], +[499.0, +499.0], +[739.0, +499.0], [1029.0, 279.0], -[903.0, +[279.0, 279.0], -[1084.0, +[709.0, 279.0], -[890.0, -361.0], -[1084.0, +[709.0, 279.0], -[890.0, +[679.0, 279.0], -[1011.0, +[299.0, 299.0], -[890.0, +[709.0, 279.0], -[790.0, +[279.0, 279.0], -[440.0, +[279.0, 279.0], +[419.0, +369.0], [279.0, 279.0], [679.0, 279.0], -[299.0, +[359.0, 299.0], [289.0, 289.0], [679.0, 279.0], -[671.0, -279.0], -[671.0, -279.0], -[671.0, +[419.0, 279.0], -[516.0, -289.0], -[299.0, -299.0], -[279.0, +[379.0, 279.0], -[279.0, +[419.0, 279.0], -[null, -null], -[null, -null], [289.0, 289.0], -[299.0, +[439.0, +439.0], +[379.0, 299.0], -[279.0, -279.0], -[279.0, +[419.0, 279.0], -[279.0, -279.0], -[279.0, -279.0], -[279.0, -279.0], -[289.0, -289.0], -[289.0, -279.0], -[279.0, +[369.0, 279.0], +[419.0, +419.0], +[359.0, +359.0], [289.0, 289.0], -[279.0, -279.0], -[null, -null], -[279.0, -279.0], -[279.0, -279.0], -[279.0, -279.0], -[299.0, +[379.0, 299.0], -[null, -null], -[279.0, -279.0], -[279.0, +[369.0, 279.0]], - name: 'cena', + name: 'LE Praha-Krakov', yAxis: 0, - color: '#fd7f6f', - visible: true, - type: 'arearange',linkedTo: 'previous',fillOpacity: 0.3,lineWidth: 0,marker: {enabled: false} + color: 'purple', + marker: { + enabled: false +}, + tooltip: { + shared: false, + valuePrefix: 'nejni a nejvy: ', + valueSuffix: ' K' +}, + visible: false, + type: 'arearange',linkedTo: 'line_LE Praha-Krakov', fillOpacity: 0.3, lineWidth: 0, }], subtitle: { align: 'left', - text: 'Vchodn zobrazen vybr jzdenky do hlavnch mst okolnch zem, dal spoje lze rozkliknout ne.' + text: 'Srovnvaj se pouze spoje s nejnim monm potem pestup.' }, title: { align: 'left', margin: 30, - text: 'Stedn ceny jzdnho do zahrani v zvislosti na pedstihu nkupu' + text: 'Mezisttn jzdn podle pedstihu nkupu' }, xAxis: { - categories: ['0', -'1', -'2', -'3', -'4', -'5', -'6', -'7', -'8', -'9', -'10', -'11', -'12', -'13', -'14', -'15', -'16', -'17', -'18', -'19', -'20', -'21', -'22', -'23', -'24', -'25', -'26', -'27', -'28', -'29', -'30', -'31', -'32', -'33', -'34', -'35', -'36', -'37', -'38', -'39', -'40', -'41', -'42', -'43', -'44', -'45', -'46', -'48', -'49', -'51', -'52', -'54', -'55', -'56', -'57', -'58', -'60', -'61', -'62', -'64', -'65', -'66', -'67', -'68', -'69', -'70', -'71', -'72', -'73', -'75', -'79', -'80', -'81', -'82', -'83', -'84', -'85', -'88', -'89', -'90', -'92'], + categories: ['0 d', +'1 d', +'2 d', +'3 d', +'4 d', +'5 d', +'6 d', +'7 d', +'8 d', +'9 d', +'10 d', +'11 d', +'12 d', +'13 d', +'14 d', +'15 d', +'16 d', +'17 d', +'18 d', +'19 d', +'20 d', +'21 d', +'22 d', +'23 d', +'24 d', +'25 d', +'26 d', +'27 d', +'28 d', +'29 d', +'30 d', +'31 d', +'32 d', +'33 d', +'34 d', +'35 d', +'36 d', +'37 d', +'38 d', +'39 d', +'40 d', +'41 d', +'42 d', +'43 d', +'44 d', +'45 d', +'46 d', +'47 d', +'48 d', +'49 d', +'50 d', +'51 d', +'52 d', +'53 d', +'54 d', +'55 d', +'56 d', +'57 d', +'58 d', +'59 d'], min: 0 }, yAxis: [{ + min: 0, reversed: false, title: { text: ` `