{"id":285,"date":"2023-06-14T17:13:46","date_gmt":"2023-06-14T16:13:46","guid":{"rendered":"https:\/\/zdebla.me\/?p=285"},"modified":"2023-07-02T19:51:17","modified_gmt":"2023-07-02T18:51:17","slug":"quick-delay-heatmap","status":"publish","type":"post","link":"https:\/\/zdebla.me\/index.php\/2023\/06\/14\/quick-delay-heatmap\/","title":{"rendered":"En-route delay per state heatmap"},"content":{"rendered":"\n<p class=\"has-text-align-center\"><em>Click on the &#8220;brick&#8221; to see how the delays were distributed during the year.<\/em><\/p>\n\n\n\n<p class=\"has-small-font-size\">The Union-wide capacity target is set for each year of the reference period 2 (RP2) <strong>at 0.5 minutes of average ATFM delay per flight<\/strong> (green color is below the target).<\/p>\n\n\n\n<p class=\"has-text-align-center has-small-font-size\">The phone version is available <a href=\"https:\/\/public.tableau.com\/views\/heatmap_mobile\/dash_mobile?:language=en-US&amp;:display_count=n&amp;:origin=viz_share_link\">here<\/a>.<\/p>\n\n\n\n<div class='tableauPlaceholder' id='viz1686809257857' style='position: relative'><noscript><a href='#'><img alt='Dashboard 1 ' src='https:&#47;&#47;public.tableau.com&#47;static&#47;images&#47;de&#47;delayspercountryperyearheatmap&#47;Dashboard1&#47;1_rss.png' style='border: none' \/><\/a><\/noscript><object class='tableauViz'  style='display:none;'><param name='host_url' value='https%3A%2F%2Fpublic.tableau.com%2F' \/> <param name='embed_code_version' value='3' \/> <param name='site_root' value='' \/><param name='name' value='delayspercountryperyearheatmap&#47;Dashboard1' \/><param name='tabs' value='no' \/><param name='toolbar' value='yes' \/><param name='static_image' value='https:&#47;&#47;public.tableau.com&#47;static&#47;images&#47;de&#47;delayspercountryperyearheatmap&#47;Dashboard1&#47;1.png' \/> <param name='animate_transition' value='yes' \/><param name='display_static_image' value='yes' \/><param name='display_spinner' value='yes' \/><param name='display_overlay' value='yes' \/><param name='display_count' value='yes' \/><param name='language' value='en-US' \/><\/object><\/div>                <script type='text\/javascript'>                    var divElement = document.getElementById('viz1686809257857');                    var vizElement = divElement.getElementsByTagName('object')[0];                    if ( divElement.offsetWidth > 1000 ) { vizElement.style.width='650px';vizElement.style.height='1000x';} else if ( divElement.offsetWidth > 500 ) { vizElement.style.width='650px';vizElement.style.height='1000px';} else { vizElement.style.width='100%';vizElement.style.height='727px';}                     var scriptElement = document.createElement('script');                    scriptElement.src = 'https:\/\/public.tableau.com\/javascripts\/api\/viz_v1.js';                    vizElement.parentNode.insertBefore(scriptElement, vizElement);                <\/script>\n\n\n\n<p class=\"has-text-align-center has-vivid-cyan-blue-color has-text-color\">Data pre-aggregation<\/p>\n\n\n\n<p>The great thing about this visualisation was that I spent only minimal time preparing the data, I only aggreated the <em><a href=\"https:\/\/www.eurocontrol.int\/performance\/data\/download\/xls\/En-Route_ATFM_Delay_AUA.xlsx\">En-route IFR flights and ATFM delays <\/a><\/em>dataset from <a href=\"https:\/\/ansperformance.eu\/data\/\">EUROCONTROL <\/a>in a pivot table, which reduced the file size from 20MB to 0.5 and added calculated field(s) in <em>Tableau<\/em> to divide the delay figures by the number of flights.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Click on the &#8220;brick&#8221; to see how the delays were distributed during the year. The Union-wide capacity target is set for each year of the reference period 2 (RP2) at 0.5 minutes of average ATFM delay per flight (green color is below the target). The phone version is available here. Data pre-aggregation The great thing [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[10],"tags":[],"class_list":["post-285","post","type-post","status-publish","format-standard","hentry","category-projects"],"_links":{"self":[{"href":"https:\/\/zdebla.me\/index.php\/wp-json\/wp\/v2\/posts\/285","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/zdebla.me\/index.php\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/zdebla.me\/index.php\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/zdebla.me\/index.php\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/zdebla.me\/index.php\/wp-json\/wp\/v2\/comments?post=285"}],"version-history":[{"count":9,"href":"https:\/\/zdebla.me\/index.php\/wp-json\/wp\/v2\/posts\/285\/revisions"}],"predecessor-version":[{"id":382,"href":"https:\/\/zdebla.me\/index.php\/wp-json\/wp\/v2\/posts\/285\/revisions\/382"}],"wp:attachment":[{"href":"https:\/\/zdebla.me\/index.php\/wp-json\/wp\/v2\/media?parent=285"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/zdebla.me\/index.php\/wp-json\/wp\/v2\/categories?post=285"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/zdebla.me\/index.php\/wp-json\/wp\/v2\/tags?post=285"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}