(COVID19 - Monitoraggio ed Analisi della situazione italiana)
 
(135 versioni intermedie di 2 utenti non mostrate)
Riga 1: Riga 1:
= COVID19 - Monitoraggio ed Analisi della situazione italiana=
+
<html>
<absHTML>
+
    <head>
<div id="j">
+
        <script src="https://cdn.plot.ly/plotly-latest.min.js"></script>
<div class="container">
+
       
<div class="row">
+
    </head>
<h1>COVID-19 Italia - Monitoraggio ed Analisi della situazione</h1>
+
    <body>
 +
<h1> COVID19 - Monitoraggio ed Analisi della situazione italiana</h1>
 +
<h2> Andamento nazionale </h1>
  
<p>TETSTSHJBJHABJBABKBACBCKBAKBCKJB</p>
+
<div align="center" id="myDiv2" ></div>
 +
<h2> Andamenti regionali </h2>
  
<!-- <p>Starting from these premises, the Telematics Lab @
+
  <div>
Politecnico di Bari , member CNIT, developed a concrete solution
+
    <div class="showcase__section" id="bubble">
that offers: name-based communication scheme, flexible data
+
      <div class="spacer --small"></div>
delivery, support for heterogeneous network infrastructures,
+
      <div id="bubbleplots">
platform interoperability, and technology-independent
+
        <div class="bubbleplot" data-num="0">
implementation of high-level applications.&nbsp;</p>
+
          <div class="plot" id="plotdiv"></div>
 +
          <div class="control-row">
 +
            Regione: <select class="countrydata">
 +
            </select>
 +
          </div>
 +
        </div>
 +
      </div>
 +
    </div>
 +
  </div>
 +
  <div id="myDiv" height:500px;"></div>
 +
  <div style="height:150px;"></div>
 +
 
 +
<h2> Andamenti Provinciali </h2>
 +
          <div class="showcase__section" id="bubble">
 +
            <div class="spacer --small"></div>
 +
            <div id="bubbleplots">
 +
              <div class="bubbleplot" data-num="1">
 +
                <div class="plot" id="plotdiv"></div>
 +
                <div class="control-row">
 +
                  Provincia: <select class="provdata">
 +
                  </select>
 +
                </div>
 +
              </div>
 +
            </div>
 +
          </div>
 +
        </div>
 +
        <div id="myDiv3" style="height:500px;"></div>
 +
       
 +
<div style="height:150px;"></div>
 +
<h2> Disclaimer </h2>
 +
Dati forniti dal Ministero della Salute, elaborazione e gestione dati a cura del Dipartimento della Protezione Civile: https://github.com/pcm-dpc/COVID-19
  
<p>The work has been carried out in the framework of the H2020
+
Rielaborazione a cura del Control of Dynamic System Lab, Politecnico di Bari
BONVOYAGE project. In fact, the implemented ICN-IoT architecture
 
can also be used to efficiently disseminate data related to
 
advanced services offered by Intelligent Transportation Systems.
 
The outcomes of this work will be also exploited in the Galileo
 
cooperation program "A de-verticalized machine-to-machine platform
 
for smart building applications" (Project n.: G15_12).</p>
 
  
<p>To showcase the viability of our proposal, an experimental
+
<script>
testbed has been deployed. A heterogeneous network made up by two
+
    //REGIONI
different realms (e.g., ICN and IP), connected to each other with a
+
Plotly.d3.csv('https://raw.githubusercontent.com/pcm-dpc/COVID-19/master/dati-regioni/dpc-covid19-ita-regioni.csv', function(err, rows){
dedicated border router, is considered. An IoT domain based on the
 
ETSI M2M architecture exposes its resources through a gateway,
 
attached to the NDN realm. Moreover, a data consumer interested to
 
data generated in the IoT domain is attached to the IP realm. Thus,
 
the testbed aims at demonstrating that the data consumer
 
applications is able to retrieve contents of its interest by using
 
communication primitives made available by the developed
 
middleware, without taking care of the underlying communication
 
technology, the protocol architecture deployed in the IoT domain,
 
and the heterogeneous nature of the network.</p> -->
 
  
 +
function unpack(rows, key) {
 +
    return rows.map(function(row) { return row[key]; });
 +
}
  
<div class="panel-body">
+
var allRegionNames = unpack(rows, 'denominazione_regione'),
<div class="responsive-container">
+
    allDay = unpack(rows, 'data'),
<div class="dummy"
+
    allRicoverati = unpack(rows, 'ricoverati_con_sintomi'),
style="height: 226px; width: 400px; float: center;"></div>
+
    allTi = unpack(rows, 'terapia_intensiva'),
<div class="img-container">
+
    allTo = unpack(rows, 'totale_ospedalizzati'),
<img alt="" src="./webtool/covid19/svg/Italia.svg" />
+
    allIdom = unpack(rows, 'isolamento_domiciliare'),
</div>
+
    allAttPos = unpack(rows, 'totale_positivi'),
</div>
+
    allNewPos = unpack(rows, 'nuovi_positivi'),
</div>
+
    allDimGuariti = unpack(rows, 'dimessi_guariti'),
</div>
+
    allMorti = unpack(rows, 'deceduti'),
</div>
+
    allTotCasi = unpack(rows, 'totale_casi'),
</div>
+
    allTamponi = unpack(rows, 'tamponi'),
<div class="container">
 
<div class="panel-group" id="accordion">
 
<div class="panel panel-default">
 
<div class="panel-heading" id="panel_heading_brightness">
 
<h4 class="panel-title">
 
<a data-toggle="collapse" data-parent="#accordion"
 
href="#collapse1">
 
<div class="row">
 
<div class="col-md-8 col-sm-8 col-xs-4">
 
<h4>Lombardia</h4>
 
</div>
 
</div>
 
</a>
 
</h4>
 
</div>
 
<div id="collapse1" class="panel-collapse collapse">
 
<div class="panel-body">
 
<div class="responsive-container">
 
<div class="dummy"
 
style="height: 226px; width: 400px; float: center;"></div>
 
<div class="img-container">
 
<img alt="" src="./webtool/covid19/svg/Lombardia.svg" />
 
</div>
 
</div>
 
</div>
 
</div>
 
</div>
 
<div class="panel panel-default">
 
<div class="panel-heading" id="panel_heading_brightness">
 
<h4 class="panel-title">
 
<a data-toggle="collapse" data-parent="#accordion"
 
href="#collapse2">
 
<div class="row">
 
<div class="col-md-8 col-sm-8 col-xs-4">
 
<h4>Emilia Romagna</h4>
 
</div>
 
</div>
 
</a>
 
</h4>
 
</div>
 
<div id="collapse2" class="panel-collapse collapse">
 
<div class="panel-body">
 
<div class="responsive-container">
 
<div class="dummy"
 
style="height: 226px; width: 400px; float: center;"></div>
 
<div class="img-container">
 
<img alt="" src="./webtool/covid19/svg/Emilia Romagna.svg" />
 
</div>
 
</div>
 
</div>
 
</div>
 
</div>
 
<div class="panel panel-default">
 
<div class="panel-heading" id="panel_heading_brightness">
 
<h4 class="panel-title">
 
<a data-toggle="collapse" data-parent="#accordion"
 
href="#collapse3">
 
<div class="row">
 
<div class="col-md-8 col-sm-8 col-xs-4">
 
<h4>Veneto</h4>
 
</div>
 
</div>
 
</a>
 
</h4>
 
</div>
 
<div id="collapse3" class="panel-collapse collapse">
 
<div class="panel-body">
 
<div class="responsive-container">
 
<div class="dummy"
 
style="height: 226px; width: 400px; float: center;"></div>
 
<div class="img-container">
 
<img alt="" src="./webtool/covid19/svg/Veneto.svg" />
 
</div>
 
</div>
 
</div>
 
</div>
 
</div>
 
<div class="panel panel-default">
 
<div class="panel-heading" id="panel_heading_brightness">
 
<h4 class="panel-title">
 
<a data-toggle="collapse" data-parent="#accordion"
 
href="#collapse4">
 
<div class="row">
 
<div class="col-md-8 col-sm-8 col-xs-4">
 
<h4>Liguria</h4>
 
</div>
 
</div>
 
</a>
 
</h4>
 
</div>
 
<div id="collapse4" class="panel-collapse collapse">
 
<div class="panel-body">
 
<div class="responsive-container">
 
<div class="dummy"
 
style="height: 226px; width: 400px; float: center;"></div>
 
<div class="img-container">
 
<img alt="" src="./webtool/covid19/svg/Liguria.svg" />
 
</div>
 
</div>
 
</div>
 
</div>
 
</div>
 
<div class="panel panel-default">
 
<div class="panel-heading" id="panel_heading_brightness">
 
<h4 class="panel-title">
 
<a data-toggle="collapse" data-parent="#accordion"
 
href="#collapse5">
 
<div class="row">
 
<div class="col-md-8 col-sm-8 col-xs-4">
 
<h4>Abruzzo</h4>
 
</div>
 
</div>
 
</a>
 
</h4>
 
</div>
 
<div id="collapse5" class="panel-collapse collapse">
 
<div class="panel-body">
 
<div class="responsive-container">
 
<div class="dummy"
 
style="height: 226px; width: 400px; float: center;"></div>
 
<div class="img-container">
 
<img alt="" src="./webtool/covid19/svg/Abruzzo.svg" />
 
</div>
 
</div>
 
</div>
 
</div>
 
</div>
 
<div class="panel panel-default">
 
<div class="panel-heading" id="panel_heading_brightness">
 
<h4 class="panel-title">
 
<a data-toggle="collapse" data-parent="#accordion"
 
href="#collapse6">
 
<div class="row">
 
<div class="col-md-8 col-sm-8 col-xs-4">
 
<h4>Basilicata</h4>
 
</div>
 
</div>
 
</a>
 
</h4>
 
</div>
 
<div id="collapse6" class="panel-collapse collapse">
 
<div class="panel-body">
 
<div class="responsive-container">
 
<div class="dummy"
 
style="height: 226px; width: 400px; float: center;"></div>
 
<div class="img-container">
 
<img alt="" src="./webtool/covid19/svg/Basilicata.svg" />
 
</div>
 
</div>
 
</div>
 
</div>
 
</div>
 
<div class="panel panel-default">
 
<div class="panel-heading" id="panel_heading_brightness">
 
<h4 class="panel-title">
 
<a data-toggle="collapse" data-parent="#accordion"
 
href="#collapse7">
 
<div class="row">
 
<div class="col-md-8 col-sm-8 col-xs-4">
 
<h4>Calabria</h4>
 
</div>
 
</div>
 
</a>
 
</h4>
 
</div>
 
<div id="collapse7" class="panel-collapse collapse">
 
<div class="panel-body">
 
<div class="responsive-container">
 
<div class="dummy"
 
style="height: 226px; width: 400px; float: center;"></div>
 
<div class="img-container">
 
<img alt="" src="./webtool/covid19/svg/Calabria.svg" />
 
</div>
 
</div>
 
</div>
 
</div>
 
</div>
 
<div class="panel panel-default">
 
<div class="panel-heading" id="panel_heading_brightness">
 
<h4 class="panel-title">
 
<a data-toggle="collapse" data-parent="#accordion"
 
href="#collapse8">
 
<div class="row">
 
<div class="col-md-8 col-sm-8 col-xs-4">
 
<h4>Campania</h4>
 
</div>
 
</div>
 
</a>
 
</h4>
 
</div>
 
<div id="collapse8" class="panel-collapse collapse">
 
<div class="panel-body">
 
<div class="responsive-container">
 
<div class="dummy"
 
style="height: 226px; width: 400px; float: center;"></div>
 
<div class="img-container">
 
<img alt="" src="./webtool/covid19/svg/Campania.svg" />
 
</div>
 
</div>
 
</div>
 
</div>
 
</div>
 
<div class="panel panel-default">
 
<div class="panel-heading" id="panel_heading_brightness">
 
<h4 class="panel-title">
 
<a data-toggle="collapse" data-parent="#accordion"
 
href="#collapse9">
 
<div class="row">
 
<div class="col-md-8 col-sm-8 col-xs-4">
 
<h4>Friuli Venezia Giulia</h4>
 
</div>
 
</div>
 
</a>
 
</h4>
 
</div>
 
<div id="collapse9" class="panel-collapse collapse">
 
<div class="panel-body">
 
<div class="responsive-container">
 
<div class="dummy"
 
style="height: 226px; width: 400px; float: center;"></div>
 
<div class="img-container">
 
<img alt=""
 
src="./webtool/covid19/svg/Friuli Venezia Giulia.svg" />
 
</div>
 
</div>
 
</div>
 
</div>
 
</div>
 
<div class="panel panel-default">
 
<div class="panel-heading" id="panel_heading_brightness">
 
<h4 class="panel-title">
 
<a data-toggle="collapse" data-parent="#accordion"
 
href="#collapse10">
 
<div class="row">
 
<div class="col-md-8 col-sm-8 col-xs-4">
 
<h4>Lazio</h4>
 
</div>
 
</div>
 
</a>
 
</h4>
 
</div>
 
<div id="collapse10" class="panel-collapse collapse">
 
<div class="panel-body">
 
<div class="responsive-container">
 
<div class="dummy"
 
style="height: 226px; width: 400px; float: center;"></div>
 
<div class="img-container">
 
<img alt="" src="./webtool/covid19/svg/Lazio.svg" />
 
</div>
 
</div>
 
</div>
 
</div>
 
</div>
 
<div class="panel panel-default">
 
<div class="panel-heading" id="panel_heading_brightness">
 
<h4 class="panel-title">
 
<a data-toggle="collapse" data-parent="#accordion"
 
href="#collapse11">
 
<div class="row">
 
<div class="col-md-8 col-sm-8 col-xs-4">
 
<h4>Marche</h4>
 
</div>
 
</div>
 
</a>
 
</h4>
 
</div>
 
<div id="collapse11" class="panel-collapse collapse">
 
<div class="panel-body">
 
<div class="responsive-container">
 
<div class="dummy"
 
style="height: 226px; width: 400px; float: center;"></div>
 
<div class="img-container">
 
<img alt="" src="./webtool/covid19/svg/Marche.svg" />
 
</div>
 
</div>
 
</div>
 
</div>
 
</div>
 
<div class="panel panel-default">
 
<div class="panel-heading" id="panel_heading_brightness">
 
<h4 class="panel-title">
 
<a data-toggle="collapse" data-parent="#accordion"
 
href="#collapse12">
 
<div class="row">
 
<div class="col-md-8 col-sm-8 col-xs-4">
 
<h4>Molise</h4>
 
</div>
 
</div>
 
</a>
 
</h4>
 
</div>
 
<div id="collapse12" class="panel-collapse collapse">
 
<div class="panel-body">
 
<div class="responsive-container">
 
<div class="dummy"
 
style="height: 226px; width: 400px; float: center;"></div>
 
<div class="img-container">
 
<img alt="" src="./webtool/covid19/svg/Molise.svg" />
 
</div>
 
</div>
 
</div>
 
</div>
 
</div>
 
<div class="panel panel-default">
 
<div class="panel-heading" id="panel_heading_brightness">
 
<h4 class="panel-title">
 
<a data-toggle="collapse" data-parent="#accordion"
 
href="#collapse13">
 
<div class="row">
 
<div class="col-md-8 col-sm-8 col-xs-4">
 
<h4>P.A. Bolzano</h4>
 
</div>
 
</div>
 
</a>
 
</h4>
 
</div>
 
<div id="collapse13" class="panel-collapse collapse">
 
<div class="panel-body">
 
<div class="responsive-container">
 
<div class="dummy"
 
style="height: 226px; width: 400px; float: center;"></div>
 
<div class="img-container">
 
<img alt="" src="./webtool/covid19/svg/P.A. Bolzano.svg" />
 
</div>
 
</div>
 
</div>
 
</div>
 
</div>
 
<div class="panel panel-default">
 
<div class="panel-heading" id="panel_heading_brightness">
 
<h4 class="panel-title">
 
<a data-toggle="collapse" data-parent="#accordion"
 
href="#collapse14">
 
<div class="row">
 
<div class="col-md-8 col-sm-8 col-xs-4">
 
<h4>P.A. Trento</h4>
 
</div>
 
</div>
 
</a>
 
</h4>
 
</div>
 
<div id="collapse14" class="panel-collapse collapse">
 
<div class="panel-body">
 
<div class="responsive-container">
 
<div class="dummy"
 
style="height: 226px; width: 400px; float: center;"></div>
 
<div class="img-container">
 
<img alt="" src="./webtool/covid19/svg/P.A. Trento.svg" />
 
</div>
 
</div>
 
</div>
 
</div>
 
</div>
 
<div class="panel panel-default">
 
<div class="panel-heading" id="panel_heading_brightness">
 
<h4 class="panel-title">
 
<a data-toggle="collapse" data-parent="#accordion"
 
href="#collapse15">
 
<div class="row">
 
<div class="col-md-8 col-sm-8 col-xs-4">
 
<h4>Puglia</h4>
 
</div>
 
</div>
 
</a>
 
</h4>
 
</div>
 
<div id="collapse15" class="panel-collapse collapse">
 
<div class="panel-body">
 
<div class="responsive-container">
 
<div class="dummy"
 
style="height: 226px; width: 400px; float: center;"></div>
 
<div class="img-container">
 
<img alt="" src="./webtool/covid19/svg/Puglia.svg" />
 
</div>
 
</div>
 
</div>
 
</div>
 
</div>
 
<div class="panel panel-default">
 
<div class="panel-heading" id="panel_heading_brightness">
 
<h4 class="panel-title">
 
<a data-toggle="collapse" data-parent="#accordion"
 
href="#collapse16">
 
<div class="row">
 
<div class="col-md-8 col-sm-8 col-xs-4">
 
<h4>Sardegna</h4>
 
</div>
 
</div>
 
</a>
 
</h4>
 
</div>
 
<div id="collapse16" class="panel-collapse collapse">
 
<div class="panel-body">
 
<div class="responsive-container">
 
<div class="dummy"
 
style="height: 226px; width: 400px; float: center;"></div>
 
<div class="img-container">
 
<img alt="" src="./webtool/covid19/svg/Sardegna.svg" />
 
</div>
 
</div>
 
</div>
 
</div>
 
</div>
 
<div class="panel panel-default">
 
<div class="panel-heading" id="panel_heading_brightness">
 
<h4 class="panel-title">
 
<a data-toggle="collapse" data-parent="#accordion"
 
href="#collapse17">
 
<div class="row">
 
<div class="col-md-8 col-sm-8 col-xs-4">
 
<h4>Sicilia</h4>
 
</div>
 
</div>
 
</a>
 
</h4>
 
</div>
 
<div id="collapse17" class="panel-collapse collapse">
 
<div class="panel-body">
 
<div class="responsive-container">
 
<div class="dummy"
 
style="height: 226px; width: 400px; float: center;"></div>
 
<div class="img-container">
 
<img alt="" src="./webtool/covid19/svg/Sicilia.svg" />
 
</div>
 
</div>
 
</div>
 
</div>
 
</div>
 
<div class="panel panel-default">
 
<div class="panel-heading" id="panel_heading_brightness">
 
<h4 class="panel-title">
 
<a data-toggle="collapse" data-parent="#accordion"
 
href="#collapse18">
 
<div class="row">
 
<div class="col-md-8 col-sm-8 col-xs-4">
 
<h4>Toscana</h4>
 
</div>
 
</div>
 
</a>
 
</h4>
 
</div>
 
<div id="collapse18" class="panel-collapse collapse">
 
<div class="panel-body">
 
<div class="responsive-container">
 
<div class="dummy"
 
style="height: 226px; width: 400px; float: center;"></div>
 
<div class="img-container">
 
<img alt="" src="./webtool/covid19/svg/Toscana.svg" />
 
</div>
 
</div>
 
</div>
 
</div>
 
</div>
 
<div class="panel panel-default">
 
<div class="panel-heading" id="panel_heading_brightness">
 
<h4 class="panel-title">
 
<a data-toggle="collapse" data-parent="#accordion"
 
href="#collapse19">
 
<div class="row">
 
<div class="col-md-8 col-sm-8 col-xs-4">
 
<h4>Umbria</h4>
 
</div>
 
</div>
 
</a>
 
</h4>
 
</div>
 
<div id="collapse19" class="panel-collapse collapse">
 
<div class="panel-body">
 
<div class="responsive-container">
 
<div class="dummy"
 
style="height: 226px; width: 400px; float: center;"></div>
 
<div class="img-container">
 
<img alt="" src="./webtool/covid19/svg/Umbria.svg" />
 
</div>
 
</div>
 
</div>
 
</div>
 
</div>
 
<div class="panel panel-default">
 
<div class="panel-heading" id="panel_heading_brightness">
 
<h4 class="panel-title">
 
<a data-toggle="collapse" data-parent="#accordion"
 
href="#collapse20">
 
<div class="row">
 
<div class="col-md-8 col-sm-8 col-xs-4">
 
<h4>Valle d'Aosta</h4>
 
</div>
 
</div>
 
</a>
 
</h4>
 
</div>
 
<div id="collapse20" class="panel-collapse collapse">
 
<div class="panel-body">
 
<div class="responsive-container">
 
<div class="dummy"
 
style="height: 226px; width: 400px; float: center;"></div>
 
<div class="img-container">
 
<img alt="" src="./webtool/covid19/svg/Valle d'Aosta.svg" />
 
</div>
 
</div>
 
</div>
 
</div>
 
</div>
 
  
</div>
+
    listofRegions = [],
</div>
+
    currentCountry,
<div id="f">
+
    currentGdp = [],
<div class="container">
+
    currentYear = [];
<div class="row">
+
    currTitle = 'Abruzzo';
<div class="col-md-4 col-xs-4">
+
    currallRicoverati = [];
<div class="responsive-container">
+
    currallTi = [];
<div class="dummy"></div>
+
    currallTo = [];
<div class="img-container">
+
    currallIdom = [];
<img src="./webtool/c3lab_logo.png" alt="telematics-logo"
+
    currallAttPos = [];
style="width: 150px; height: 93px;">
+
    currallNewPos = [];
</div>
+
    currallDimGuariti = [];
</div>
+
    currallMorti = [];
</div>
+
    currallTotCasi = [];
<div class="col-md-4 col-xs-4">
+
    currallTamponi = [];
<div class="responsive-container">
+
 
<div class="dummy"></div>
+
    currallMortiTi = [];
<div class="img-container">
+
    currallMortiOsp = [];
<img src="./webtool/poliba_marchio.svg" alt="horizon2020"
+
    currNewMorti = [];
style="width: 290px; height: 135px;">
+
    //allDay = allDay.split(' ')[0];
</div>
+
 
</div>
+
for (var i = 0; i < allRegionNames.length; i++ ){
</div>
+
    if (listofRegions.indexOf(allRegionNames[i]) === -1 ){
<div class="col-md-4 col-xs-4">
+
        listofRegions.push(allRegionNames[i]);
<div class="responsive-container">
+
    }
<div class="dummy"></div>
+
}
<div class="img-container">
+
 
<img src="./webtool/Flag_of_Europe.svg.png" alt="europe-flag"
+
function getRegionData(chosenCountry) {
style="width: 120px; height: 86px;">
+
    currTitle = chosenCountry;
</div>
+
    currentYear = [];
</div>
+
    currallRicoverati = [];
</div>
+
    currallTi = [];
</div>
+
    currallTo = [];
</div>
+
    currallIdom = [];
</div>
+
    currallAttPos = [];
</absHTML>
+
    currallNewPos = [];
 +
    currallDimGuariti = [];
 +
    currallMorti = [];
 +
    currallTotCasi = [];
 +
    currallTamponi = [];
 +
 
 +
    currallMortiTi = [];
 +
    currallMortiOsp = [];
 +
    currNewMorti = [];
 +
 
 +
    for (var i = 0 ; i < allRegionNames.length ; i++){
 +
        if ( allRegionNames[i] === chosenCountry ) {
 +
            currentYear.push(allDay[i].split(' ')[0]);
 +
            currallRicoverati.push(allRicoverati[i]);
 +
            currallTi.push(allTi[i]);
 +
            currallTo.push(allTo[i]);
 +
            currallIdom.push(allIdom[i]);
 +
            currallAttPos.push(allAttPos[i]);
 +
            currallNewPos.push(allNewPos[i]);
 +
            currallDimGuariti.push(allDimGuariti[i]);
 +
            currallMorti.push(allMorti[i]);
 +
            currallTotCasi.push(allTotCasi[i]);
 +
            currallTamponi.push(allTamponi[i]);
 +
 
 +
            currallMortiTi.push(parseInt(allTi[i])+parseInt(allMorti[i]));
 +
            currallMortiOsp.push(parseInt(allTo[i])+parseInt(allMorti[i]));
 +
            currNewMorti = get_diff(currallMorti);
 +
        }
 +
    }
 +
};
 +
 
 +
// Default Region Data
 +
setBubblePlot('Abruzzo');
 +
 
 +
function setBubblePlot(chosenCountry) {
 +
    getRegionData(chosenCountry);
 +
 
 +
    var trace1 = {
 +
        visible: 'legendonly',
 +
        x: currentYear,
 +
        y: currallRicoverati,
 +
 
 +
        name: 'Ricoverati con sintomi',
 +
        mode: 'markers',
 +
        marker: {
 +
            size: 6,
 +
            opacity: 1
 +
        }
 +
    };
 +
 
 +
    var trace2 = {
 +
        visible: 'legendonly',
 +
        x: currentYear,
 +
        y: currallTi,
 +
       
 +
        mode: 'markers',
 +
        name: 'Terapia Intensiva',
 +
        marker: {
 +
            size: 6,
 +
            opacity: 1
 +
        }
 +
    };
 +
 
 +
    var trace3 = {
 +
        x: currentYear,
 +
        y: currallTo,
 +
       
 +
        mode: 'markers',
 +
        name: 'Totale ospedalizzati',
 +
        marker: {
 +
            size: 6,
 +
            opacity: 1,
 +
            symbol: 'triangle-down'
 +
        }
 +
    };
 +
 
 +
    var trace4 = {
 +
        x: currentYear,
 +
        y: currallIdom,
 +
       
 +
        mode: 'markers',
 +
        name: 'Isolamento domiciliare',
 +
        marker: {
 +
            size: 6,
 +
            opacity: 1,
 +
            symbol: 'triangle-left'
 +
        }
 +
    };
 +
 
 +
    var trace5 = {
 +
        visible: 'legendonly',
 +
        x: currentYear,
 +
        y: currallAttPos,
 +
       
 +
        mode: 'markers',
 +
        name: 'Totale attualmente positivi',
 +
        marker: {
 +
            size: 6,
 +
            opacity: 1,
 +
            symbol: 'triangle-right'
 +
        }
 +
    };
 +
 
 +
    var trace6 = {
 +
        visible: 'legendonly',
 +
        x: currentYear,
 +
        y: currallNewPos,
 +
       
 +
        mode: 'markers',
 +
        name: 'Nuovi attualmente positivi',
 +
        marker: {
 +
            size: 6,
 +
            opacity: 1,
 +
            symbol: 'pentagon'
 +
        }
 +
    };
 +
 
 +
    var trace7 = {
 +
        visible: 'legendonly',
 +
        x: currentYear,
 +
        y: currallDimGuariti,
 +
       
 +
        mode: 'markers',
 +
        name: 'Dimessi guariti',
 +
        marker: {
 +
            size: 6,
 +
            opacity: 1,
 +
            symbol: 'triangle-up'
 +
           
 +
        }
 +
    };
 +
 
 +
    var trace8 = {
 +
        x: currentYear,
 +
        y: currallMorti,
 +
       
 +
        mode: 'markers',
 +
        name: 'Deceduti',
 +
        marker: {
 +
            size: 6,
 +
            opacity: 1,
 +
            symbol: 'star'
 +
           
 +
        }
 +
    };
 +
 
 +
    var trace9 = {
 +
        x: currentYear,
 +
        y: currallTotCasi,
 +
       
 +
        mode: 'markers',
 +
        name: 'Totale casi',
 +
        marker: {
 +
            size: 6,
 +
            opacity: 1,
 +
            symbol: 'diamond'
 +
        }
 +
    };
 +
 
 +
    var trace10 = {
 +
        visible: 'legendonly',
 +
        x: currentYear,
 +
        y: currallTamponi,
 +
       
 +
        mode: 'markers',
 +
        name: 'Tamponi',
 +
        marker: {
 +
            size: 6,
 +
            opacity: 1,
 +
            symbol: 'square'
 +
        }
 +
    };
 +
 
 +
    var trace11 = {
 +
        visible: 'legendonly',
 +
        x: currentYear,
 +
        y: currallMortiTi,
 +
       
 +
        mode: 'markers',
 +
        name: 'Deceduti+Terapia Intensiva',
 +
        marker: {
 +
            size: 6,
 +
            opacity: 1,
 +
            symbol: 'cross'
 +
        }
 +
    };
 +
 
 +
    var trace12 = {
 +
        visible: 'legendonly',
 +
        x: currentYear,
 +
        y: currallMortiOsp,
 +
       
 +
        mode: 'markers',
 +
        name: 'Deceduti+Terapia Intensiva+Ricoverati',
 +
        marker: {
 +
            size: 6,
 +
            opacity: 1,
 +
            symbol: 'x'
 +
           
 +
        }
 +
    };
 +
    var d = new Date();
 +
    if (d.getHours()<18){
 +
        d.setDate(d.getDate()-1);
 +
        var when = d;
 +
    }else{
 +
        var when = d;
 +
    }
 +
    [dx, dy,lname, when] = get_logistic(chosenCountry,when);
 +
 
 +
    var trace13 = {
 +
        x: dx,
 +
        y: dy,
 +
        mode: 'line',
 +
        name: lname,
 +
        line: {
 +
            color: 'rgba(255,0,0,0.5)',
 +
            width: 4
 +
        }
 +
    };
 +
 
 +
 
 +
    [dxa, dya,lnamea,when] = get_logistic(chosenCountry,when);
 +
    var trace14 = {
 +
        x: dxa,
 +
        y: dya,
 +
        mode: 'line',
 +
        name: lnamea,
 +
        line: {
 +
            color: 'rgba(255,120,120,0.5)',
 +
            width: 2
 +
        }
 +
    };
 +
 
 +
    [dxa, dya,lnamea,when] = get_logistic(chosenCountry,when);
 +
    var trace15 = {
 +
        x: dxa,
 +
        y: dya,
 +
        mode: 'line',
 +
        name: lnamea,
 +
        line: {
 +
            color: 'rgba(255,180,180,0.5)',
 +
            width: 2
 +
        }
 +
    };
 +
 
 +
    [dxa, dya,lnamea,when] = get_logistic(chosenCountry,when);
 +
    var trace16 = {
 +
        x: dxa,
 +
        y: dya,
 +
        mode: 'line',
 +
        name: lnamea,
 +
        line: {
 +
            color: 'rgba(255,210,210,0.5)',
 +
            width: 2
 +
        }
 +
    }; 
 +
   
 +
    var trace17 = {
 +
        x: currentYear,
 +
        y: currNewMorti,
 +
        mode: 'markers',
 +
        name: 'Incremento morti',
 +
        marker: {
 +
            size: 6,
 +
            opacity: 1,
 +
            symbol: 'cross'
 +
        }
 +
    }; 
 +
 
 +
    var data = [trace8,
 +
                trace7,
 +
                trace11,
 +
                trace12,
 +
                trace9,
 +
                trace1,
 +
                trace2,
 +
                trace3,
 +
                trace4,
 +
                trace5,
 +
                trace6,
 +
                trace10,
 +
                trace13, trace14, trace15, trace16,trace17];
 +
 
 +
    var updatemenus=[
 +
        {
 +
            buttons: [
 +
                {
 +
                    args: [{'yaxis.type': 'linear',
 +
                            'yaxis.tickmode':'auto'}],
 +
                    label: 'Linear',
 +
                    method: 'relayout'
 +
                },
 +
                {
 +
                    args: [{'yaxis.type':'log'}],
 +
                    label:'SemiLog',
 +
                    method:'relayout'
 +
                }
 +
            ],
 +
            direction: 'left',
 +
            pad: {'r': 10, 't': 10},
 +
            showactive: true,
 +
            type: 'buttons',
 +
            x: 0.1,
 +
            xanchor: 'left',
 +
            y: 1.1,
 +
            yanchor: 'top'
 +
        }
 +
    ]
 +
 
 +
    var layout = {
 +
        title: 'Andamento regionale ' + currTitle,
 +
        height: 600,
 +
        plot_bgcolor: "#000",
 +
        //width: 800,
 +
        margin: { l: 40, r: 0},
 +
        updatemenus: updatemenus,
 +
        showlegend: true,
 +
        legend: { orientation: "h" ,
 +
                x: 0,
 +
                y: -0.5},
 +
        xaxis: {
 +
            tickmode: "linear", //  If "linear", the placement of the ticks is determined by a starting position `tick0` and a tick step `dtick`
 +
            tick0: '2020-02-24',
 +
            gridcolor: '#555',
 +
            dtick: 7 * 24 * 60 * 60 * 1000
 +
        },
 +
        yaxis: {
 +
            autorange: true,
 +
            gridcolor: '#555',
 +
            //type: 'log',
 +
            //fixedrange: true,
 +
            //range: [0,3.70]
 +
            //range: [0,5000]
 +
        }
 +
    };
 +
    var options = {
 +
        scrollZoom: true,
 +
        displayModeBar: false
 +
    };
 +
    Plotly.newPlot('myDiv', data, layout,options);
 +
};
 +
 
 +
var innerContainer = document.querySelector('[data-num="0"'),
 +
    plotEl = innerContainer.querySelector('.plot'),
 +
    countrySelector = innerContainer.querySelector('.countrydata');
 +
 
 +
function assignOptions(textArray, selector) {
 +
    for (var i = 0; i < textArray.length;  i++) {
 +
        var currentOption = document.createElement('option');
 +
        currentOption.text = textArray[i];
 +
        selector.appendChild(currentOption);
 +
    }
 +
}
 +
function getRandomColor(){
 +
    var r = 0;
 +
    var g = 0;
 +
    var b = 0;
 +
    r = getRandomInt(0, 255);
 +
    g = getRandomInt(0, 255);
 +
    b = getRandomInt(0, 255);
 +
    return [r,g,b];
 +
}
 +
 
 +
function getRandomInt(min, max) {
 +
    min = Math.ceil(min);
 +
    max = Math.floor(max);
 +
    return Math.floor(Math.random() * (max - min)) + min; //Il max è escluso e il min è incluso
 +
}
 +
 
 +
function rapporto(a,b){
 +
    var v = [];
 +
    for (var i=0;i<a.length;i++){
 +
        v.push(a[i]/b[i] * 100);
 +
    }
 +
   
 +
    return v;
 +
}
 +
function get_diff(vect){
 +
    var vdiff = [];
 +
    vdiff.push(0);
 +
    for (var i=1;i<vect.length;i++){
 +
        vdiff.push(vect[i]-vect[i-1]);
 +
    }
 +
   
 +
    return vdiff;
 +
}
 +
function formatDate(date) {
 +
    var d = new Date(date),
 +
        month = '' + (d.getMonth() + 1),
 +
        day = '' + d.getDate(),
 +
        year = d.getFullYear();
 +
 
 +
    if (month.length < 2)
 +
        month = '0' + month;
 +
    if (day.length < 2)
 +
        day = '0' + day;
 +
 
 +
    return [year, month, day].join('-');
 +
};
 +
 
 +
function formatDate2(date) {
 +
    var d = new Date(date),
 +
        month = '' + (d.getMonth() + 1),
 +
        day = '' + d.getDate()
 +
 
 +
    if (month.length < 2)
 +
        month = '0' + month;
 +
    if (day.length < 2)
 +
        day = '0' + day;
 +
 
 +
    return [day, month].join('.');
 +
};
 +
 
 +
function get_logistic(chosenCountry,when){
 +
    d = formatDate(when);
 +
    d2 = formatDate2(when);
 +
    var nome = d2+' - Fitting';
 +
    var x = [];
 +
    var y = [];
 +
    var url = "https://raw.githubusercontent.com/vtandrea/labtest/master/"+d+chosenCountry+".csv";
 +
    when.setDate(when.getDate() - 1);
 +
    var request = new XMLHttpRequest(); 
 +
    request.open("GET", url, false); 
 +
    request.send(null); 
 +
   
 +
    var csvData = new Array();
 +
    var jsonObject = request.responseText.split(/\r?\n|\r/);
 +
    for (var i = 0; i < jsonObject.length; i++) {
 +
        csvData.push(jsonObject[i].split(','));
 +
    }
 +
    for (var i=1;i<csvData.length;i++){
 +
        x.push(csvData[i][0]);
 +
        y.push(csvData[i][1]);
 +
       
 +
    }
 +
    //if(1){
 +
    if (y[40] == y[41]){
 +
        var x = [];
 +
        var y = [];
 +
        var nome = 'Empty';
 +
    }
 +
    //console.log(csvData[0][1]);
 +
    return [x,y, nome,when];
 +
}
 +
 
 +
assignOptions(listofRegions, countrySelector);
 +
 
 +
function updateCountry(){
 +
    setBubblePlot(countrySelector.value);
 +
}
 +
 
 +
countrySelector.addEventListener('change', updateCountry, false);
 +
});
 +
</script>
 +
 
 +
 
 +
 
 +
<script>
 +
    function get_diff(vect){
 +
        var vdiff = [];
 +
        vdiff.push(0);
 +
        for (var i=1;i<vect.length;i++){
 +
            vdiff.push(vect[i]-vect[i-1]);
 +
        }
 +
       
 +
        return vdiff;
 +
    }
 +
    // ITA
 +
    Plotly.d3.csv('https://raw.githubusercontent.com/pcm-dpc/COVID-19/master/dati-andamento-nazionale/dpc-covid19-ita-andamento-nazionale.csv', function(err, rows){
 +
 
 +
    function unpack(rows, key) {
 +
        return rows.map(function(row) { return row[key]; });
 +
    }
 +
 
 +
    var allRegionNames = unpack(rows, 'stato'),
 +
        allDay = unpack(rows, 'data'),
 +
        allRicoverati = unpack(rows, 'ricoverati_con_sintomi'),
 +
        allTi = unpack(rows, 'terapia_intensiva'),
 +
        allTo = unpack(rows, 'totale_ospedalizzati'),
 +
        allIdom = unpack(rows, 'isolamento_domiciliare'),
 +
        allAttPos = unpack(rows, 'totale_positivi'),
 +
        allNewPos = unpack(rows, 'nuovi_positivi'),
 +
        allDimGuariti = unpack(rows, 'dimessi_guariti'),
 +
        allMorti = unpack(rows, 'deceduti'),
 +
        allTotCasi = unpack(rows, 'totale_casi'),
 +
        allTamponi = unpack(rows, 'tamponi'),
 +
 
 +
        listofRegions = [],
 +
        currentCountry,
 +
        currentGdp = [],
 +
        currentYear = [];
 +
        currTitle = 'ITA';
 +
        currallRicoverati = [];
 +
        currallTi = [];
 +
        currallTo = [];
 +
        currallIdom = [];
 +
        currallAttPos = [];
 +
        currallNewPos = [];
 +
        currallDimGuariti = [];
 +
        currallMorti = [];
 +
        currallTotCasi = [];
 +
        currallTamponi = [];
 +
 
 +
        currallMortiTi = [];
 +
        currallMortiOsp = [];
 +
        currNewMorti = [];
 +
        //allDay = allDay.split(' ')[0];
 +
 
 +
    for (var i = 0; i < allRegionNames.length; i++ ){
 +
        if (listofRegions.indexOf(allRegionNames[i]) === -1 ){
 +
            listofRegions.push(allRegionNames[i]);
 +
        }
 +
    }
 +
 
 +
    function getRegionData(chosenCountry) {
 +
        currTitle = chosenCountry;
 +
        currentYear = [];
 +
        currallRicoverati = [];
 +
        currallTi = [];
 +
        currallTo = [];
 +
        currallIdom = [];
 +
        currallAttPos = [];
 +
        currallNewPos = [];
 +
        currallDimGuariti = [];
 +
        currallMorti = [];
 +
        currallTotCasi = [];
 +
        currallTamponi = [];
 +
 
 +
        currallMortiTi = [];
 +
        currallMortiOsp = [];
 +
        currNewMorti = [];
 +
 
 +
        for (var i = 0 ; i < allRegionNames.length ; i++){
 +
            if ( allRegionNames[i] === chosenCountry ) {
 +
                currentYear.push(allDay[i].split(' ')[0]);
 +
                currallRicoverati.push(allRicoverati[i]);
 +
                currallTi.push(allTi[i]);
 +
                currallTo.push(allTo[i]);
 +
                currallIdom.push(allIdom[i]);
 +
                currallAttPos.push(allAttPos[i]);
 +
                currallNewPos.push(allNewPos[i]);
 +
                currallDimGuariti.push(allDimGuariti[i]);
 +
                currallMorti.push(allMorti[i]);
 +
                currallTotCasi.push(allTotCasi[i]);
 +
                currallTamponi.push(allTamponi[i]);
 +
 
 +
                currallMortiTi.push(parseInt(allTi[i])+parseInt(allMorti[i]));
 +
                currallMortiOsp.push(parseInt(allTo[i])+parseInt(allMorti[i]));
 +
                currNewMorti = get_diff(currallMorti);
 +
            }
 +
        }
 +
    };
 +
 
 +
    // Default Region Data
 +
    setBubblePlot('ITA');
 +
 
 +
    function setBubblePlot(chosenCountry) {
 +
        getRegionData(chosenCountry);
 +
 
 +
        var trace1 = {
 +
            visible: 'legendonly',
 +
            x: currentYear,
 +
            y: currallRicoverati,
 +
           
 +
            name: 'Ricoverati con sintomi',
 +
            mode: 'markers',
 +
            marker: {
 +
                size: 6,
 +
                opacity: 1
 +
            }
 +
        };
 +
 
 +
        var trace2 = {
 +
            visible: 'legendonly',
 +
            x: currentYear,
 +
            y: currallTi,
 +
           
 +
            mode: 'markers',
 +
            name: 'Terapia Intensiva',
 +
            marker: {
 +
                size: 6,
 +
                opacity: 1
 +
            }
 +
        };
 +
 
 +
        var trace3 = {
 +
            x: currentYear,
 +
            y: currallTo,
 +
           
 +
            mode: 'markers',
 +
            name: 'Totale ospedalizzati',
 +
            marker: {
 +
                size: 6,
 +
                opacity: 1,
 +
                symbol: 'triangle-down'
 +
            }
 +
        };
 +
 
 +
        var trace4 = {
 +
            x: currentYear,
 +
            y: currallIdom,
 +
           
 +
            mode: 'markers',
 +
            name: 'Isolamento domiciliare',
 +
            marker: {
 +
                size: 6,
 +
                opacity: 1,
 +
                symbol: 'triangle-left'
 +
            }
 +
        };
 +
 
 +
        var trace5 = {
 +
            x: currentYear,
 +
            y: currallAttPos,
 +
           
 +
            mode: 'markers',
 +
            name: 'Totale positivi',
 +
            marker: {
 +
                size: 6,
 +
                opacity: 1,
 +
                symbol: 'triangle-right'
 +
            }
 +
        };
 +
 
 +
        var trace6 = {
 +
            visible: 'legendonly',
 +
            x: currentYear,
 +
            y: currallNewPos,
 +
           
 +
            mode: 'markers',
 +
            name: 'Nuovi positivi',
 +
            marker: {
 +
                size: 6,
 +
                opacity: 1,
 +
                symbol: 'pentagon'
 +
            }
 +
        };
 +
 
 +
        var trace7 = {
 +
            visible: 'legendonly',
 +
            x: currentYear,
 +
            y: currallDimGuariti,
 +
           
 +
            mode: 'markers',
 +
            name: 'Dimessi guariti',
 +
            marker: {
 +
                size: 6,
 +
                opacity: 1,
 +
                symbol: 'triangle-up'
 +
               
 +
            }
 +
        };
 +
 
 +
        var trace8 = {
 +
            x: currentYear,
 +
            y: currallMorti,
 +
           
 +
            mode: 'markers',
 +
            name: 'Deceduti',
 +
            marker: {
 +
                size: 6,
 +
                opacity: 1,
 +
                symbol: 'star'
 +
               
 +
            }
 +
        };
 +
 
 +
        var trace9 = {
 +
            x: currentYear,
 +
            y: currallTotCasi,
 +
           
 +
            mode: 'markers',
 +
            name: 'Totale casi',
 +
            marker: {
 +
                size: 6,
 +
                opacity: 1,
 +
                symbol: 'diamond'
 +
            }
 +
        };
 +
 
 +
        var trace10 = {
 +
            visible: 'legendonly',
 +
            x: currentYear,
 +
            y: currallTamponi,
 +
           
 +
            mode: 'markers',
 +
            name: 'Tamponi',
 +
            marker: {
 +
                size: 6,
 +
                opacity: 1,
 +
                symbol: 'square'
 +
            }
 +
        };
 +
 
 +
        var trace11 = {
 +
            visible: 'legendonly',
 +
            x: currentYear,
 +
            y: currallMortiTi,
 +
           
 +
            mode: 'markers',
 +
            name: 'Deceduti+Terapia Intensiva',
 +
            marker: {
 +
                size: 6,
 +
                opacity: 1,
 +
                symbol: 'cross'
 +
            }
 +
        };
 +
 
 +
        var trace12 = {
 +
            visible: 'legendonly',
 +
            x: currentYear,
 +
            y: currallMortiOsp,
 +
           
 +
            mode: 'markers',
 +
            name: 'Deceduti+Terapia Intensiva+Ricoverati',
 +
            marker: {
 +
                size: 6,
 +
                opacity: 1,
 +
                symbol: 'x'
 +
               
 +
            }
 +
        };
 +
        var d = new Date();
 +
        if (d.getHours()<18){
 +
            d.setDate(d.getDate()-1);
 +
            var when = d;
 +
        }else{
 +
            var when = d;
 +
        }
 +
        [dx, dy,lname, when] = get_logistic(when);
 +
 
 +
        var trace13 = {
 +
            x: dx,
 +
            y: dy,
 +
            mode: 'line',
 +
            name: lname,
 +
            line: {
 +
                color: 'rgba(255,0,0,0.5)',
 +
                width: 4
 +
            }
 +
        };
 +
 
 +
 
 +
        [dxa, dya,lnamea,when] = get_logistic(when);
 +
        var trace14 = {
 +
            x: dxa,
 +
            y: dya,
 +
            mode: 'line',
 +
            name: lnamea,
 +
            line: {
 +
                color: 'rgba(255,120,120,0.5)',
 +
                width: 2
 +
            }
 +
        };
 +
 
 +
        [dxa, dya,lnamea,when] = get_logistic(when);
 +
        var trace15 = {
 +
            x: dxa,
 +
            y: dya,
 +
            mode: 'line',
 +
            name: lnamea,
 +
            line: {
 +
                color: 'rgba(255,180,180,0.5)',
 +
                width: 2
 +
            }
 +
        };
 +
 
 +
        [dxa, dya,lnamea,when] = get_logistic(when);
 +
        var trace16 = {
 +
            x: dxa,
 +
            y: dya,
 +
            mode: 'line',
 +
            name: lnamea,
 +
            line: {
 +
                color: 'rgba(255,210,210,0.5)',
 +
                width: 2
 +
            }
 +
        };
 +
 
 +
        var trace17 = {
 +
            x: currentYear,
 +
            y: currNewMorti,
 +
            mode: 'markers',
 +
            name: 'Incremento morti',
 +
            marker: {
 +
                size: 6,
 +
                opacity: 1,
 +
                symbol: 'cross'
 +
            }
 +
        }; 
 +
 
 +
        var data = [trace8,
 +
                    trace7,
 +
                    trace11,
 +
                    trace12,
 +
                    trace9,
 +
                    trace1,
 +
                    trace2,
 +
                    trace3,
 +
                    trace4,
 +
                    trace5,
 +
                    trace6,
 +
                    trace10,
 +
                    trace13, trace14, trace15, trace16, trace17];
 +
 
 +
        var updatemenus=[
 +
            {
 +
                buttons: [
 +
                    {
 +
                        args: [{'yaxis.type': 'linear',
 +
                                'yaxis.tickmode':'auto'}],
 +
                        label: 'Linear',
 +
                        method: 'relayout'
 +
                    },
 +
                    {
 +
                        args: [{'yaxis.type':'log'}],
 +
                        label:'SemiLog',
 +
                        method:'relayout'
 +
                    }
 +
                ],
 +
                direction: 'left',
 +
                pad: {'r': 10, 't': 10},
 +
                showactive: true,
 +
                type: 'buttons',
 +
                x: 0.1,
 +
                xanchor: 'left',
 +
                y: 1.1,
 +
                yanchor: 'top'
 +
            }
 +
        ]
 +
 
 +
        var layout = {
 +
            title: 'Andamento Italia',
 +
            height: 800,
 +
            plot_bgcolor: "#000",
 +
            //width: 800,
 +
            margin: { l: 40, r: 0},
 +
            updatemenus: updatemenus,
 +
            showlegend: true,
 +
            legend: { orientation: "h" ,
 +
                    x: 0,
 +
                    y: -0.5},
 +
            xaxis: {
 +
                tickmode: "linear", //  If "linear", the placement of the ticks is determined by a starting position `tick0` and a tick step `dtick`
 +
                tick0: '2020-02-24',
 +
                gridcolor: '#555',
 +
                dtick: 7 * 24 * 60 * 60 * 1000
 +
            },
 +
            yaxis: {
 +
                autorange: true,
 +
                gridcolor: '#555',
 +
                //type: 'log',
 +
                //fixedrange: true,
 +
                //range: [0,3.70]
 +
                //range: [0,5000]
 +
            }
 +
        };
 +
        var options = {
 +
            scrollZoom: true,
 +
            displayModeBar: false
 +
        };
 +
        Plotly.newPlot('myDiv2', data, layout,options);
 +
    };
 +
 
 +
    var innerContainer = document.querySelector('[data-num="0"'),
 +
        plotEl = innerContainer.querySelector('.plot'),
 +
        countrySelector = innerContainer.querySelector('.countrydata');
 +
 
 +
    function assignOptions(textArray, selector) {
 +
        for (var i = 0; i < textArray.length;  i++) {
 +
            var currentOption = document.createElement('option');
 +
            currentOption.text = textArray[i];
 +
            selector.appendChild(currentOption);
 +
        }
 +
    }
 +
 
 +
    function formatDate(date) {
 +
        var d = new Date(date),
 +
            month = '' + (d.getMonth() + 1),
 +
            day = '' + d.getDate(),
 +
            year = d.getFullYear();
 +
 
 +
        if (month.length < 2)
 +
            month = '0' + month;
 +
        if (day.length < 2)
 +
            day = '0' + day;
 +
 
 +
        return [year, month, day].join('-');
 +
    };
 +
 
 +
    function formatDate2(date) {
 +
        var d = new Date(date),
 +
            month = '' + (d.getMonth() + 1),
 +
            day = '' + d.getDate()
 +
 
 +
        if (month.length < 2)
 +
            month = '0' + month;
 +
        if (day.length < 2)
 +
            day = '0' + day;
 +
 
 +
        return [day, month].join('.');
 +
    };
 +
 
 +
    function get_logistic(when){
 +
        d = formatDate(when);
 +
        d2 = formatDate2(when);
 +
        var nome = d2+' - Fitting';
 +
        var x = [];
 +
        var y = [];
 +
 
 +
        var url = "https://raw.githubusercontent.com/vtandrea/labtest/master/"+d+"Italia.csv";
 +
        when.setDate(when.getDate() - 1);
 +
        var request = new XMLHttpRequest(); 
 +
        request.open("GET", url, false); 
 +
        request.send(null); 
 +
       
 +
        var csvData = new Array();
 +
        var jsonObject = request.responseText.split(/\r?\n|\r/);
 +
        for (var i = 0; i < jsonObject.length; i++) {
 +
            csvData.push(jsonObject[i].split(','));
 +
        }
 +
        for (var i=1;i<csvData.length;i++){
 +
            x.push(csvData[i][0]);
 +
            y.push(csvData[i][1]);
 +
           
 +
        }
 +
        //if(1){
 +
        if (y[40] == y[41]){
 +
            var x = [];
 +
            var y = [];
 +
            var nome = 'Empty';
 +
        }
 +
        //console.log(csvData[0][1]);
 +
        return [x,y, nome,when];
 +
    }
 +
 
 +
    });
 +
</script>
 +
 
 +
<script>
 +
    // PROV
 +
    Plotly.d3.csv('https://raw.githubusercontent.com/pcm-dpc/COVID-19/master/dati-province/dpc-covid19-ita-province.csv', function(err, rows){
 +
 
 +
    function unpack(rows, key) {
 +
        return rows.map(function(row) { return row[key]; });
 +
    }
 +
 
 +
    var allRegionNames = unpack(rows, 'denominazione_provincia'),
 +
        allDay = unpack(rows, 'data'),
 +
        allTotCasi = unpack(rows, 'totale_casi'),
 +
 
 +
        listofRegions = [],
 +
        currentYear = [];
 +
        currTitle = 'Agrigento';
 +
        currallTotCasi = [];
 +
 
 +
    for (var i = 0; i < allRegionNames.length; i++ ){
 +
        if (listofRegions.indexOf(allRegionNames[i]) === -1 ){
 +
            listofRegions.push(allRegionNames[i]);
 +
        }
 +
    }
 +
    listofRegions.sort();
 +
 
 +
    function getRegionData(chosenCountry) {
 +
        currTitle = chosenCountry;
 +
        currentYear = [];
 +
        currallTotCasi = [];
 +
 
 +
        for (var i = 0 ; i < allRegionNames.length ; i++){
 +
            if ( allRegionNames[i] === chosenCountry ) {
 +
                currentYear.push(allDay[i].split(' ')[0]);
 +
                currallTotCasi.push(allTotCasi[i]);
 +
            }
 +
        }
 +
    };
 +
 
 +
    // Default Region Data
 +
    setBubblePlot('Agrigento');
 +
 
 +
    function setBubblePlot(chosenCountry) {
 +
        getRegionData(chosenCountry);
 +
 
 +
        var trace1 = {
 +
            x: currentYear,
 +
            y: currallTotCasi,
 +
           
 +
            mode: 'markers',
 +
            name: 'Totale casi',
 +
            marker: {
 +
                size: 10
 +
            }
 +
        };
 +
 
 +
        var data = [trace1];
 +
 
 +
        var updatemenus=[
 +
            {
 +
                buttons: [
 +
                    {
 +
                        args: [{'yaxis.type': 'linear',
 +
                                'yaxis.tickmode':'auto'}],
 +
                        label: 'Linear',
 +
                        method: 'relayout'
 +
                    },
 +
                    {
 +
                        args: [{'yaxis.type':'log'}],
 +
                        label:'SemiLog',
 +
                        method:'relayout'
 +
                    }
 +
                ],
 +
                direction: 'left',
 +
                pad: {'r': 10, 't': 10},
 +
                showactive: true,
 +
                type: 'buttons',
 +
                x: 0.1,
 +
                xanchor: 'left',
 +
                y: 1.1,
 +
                yanchor: 'top'
 +
            }
 +
        ]
 +
 
 +
        var layout = {
 +
            title: 'Andamento Provincia di ' + currTitle,
 +
            height: 600,
 +
            plot_bgcolor: "#000",
 +
            //width: 800,
 +
            margin: { l: 40, r: 0},
 +
            updatemenus: updatemenus,
 +
            showlegend: true,
 +
            legend: { orientation: "h" ,
 +
                    x: 1,
 +
                    y: 1},
 +
            xaxis: {
 +
                tickmode: "linear", // If "linear", the placement of the ticks is determined by a starting position `tick0` and a tick step `dtick`
 +
                tick0: '2020-02-24',
 +
                gridcolor: '#555',
 +
                dtick: 7 * 24 * 60 * 60 * 1000
 +
            },
 +
            yaxis: {
 +
                autorange: true,
 +
                gridcolor: '#555',
 +
            }
 +
        };
 +
        var options = {
 +
            scrollZoom: true,
 +
            displayModeBar: false
 +
        };
 +
        Plotly.newPlot('myDiv3', data, layout,options);
 +
    };
 +
 
 +
    var innerContainer = document.querySelector('[data-num="1"'),
 +
        //plotEl = innerContainer.querySelector('.plot'),
 +
        countrySelector = innerContainer.querySelector('.provdata');
 +
 
 +
    function assignOptions(textArray, selector) {
 +
        for (var i = 0; i < textArray.length;  i++) {
 +
            var currentOption = document.createElement('option');
 +
            currentOption.text = textArray[i];
 +
            selector.appendChild(currentOption);
 +
        }
 +
    }
 +
 
 +
    assignOptions(listofRegions, countrySelector);
 +
 
 +
    function updateCountry(){
 +
        setBubblePlot(countrySelector.value);
 +
    }
 +
 
 +
    countrySelector.addEventListener('change', updateCountry, false);
 +
    });
 +
</script>
 +
 
 +
 
 +
</body>
 +
</html>

Versione attuale delle 23:01, 2 Nov 2020

COVID19 - Monitoraggio ed Analisi della situazione italiana

Andamento nazionale

Andamenti regionali

Regione:

Andamenti Provinciali

Provincia:

Disclaimer

Dati forniti dal Ministero della Salute, elaborazione e gestione dati a cura del Dipartimento della Protezione Civile: https://github.com/pcm-dpc/COVID-19 Rielaborazione a cura del Control of Dynamic System Lab, Politecnico di Bari

COVID19 - Monitoraggio ed Analisi della situazione italiana[edit]

COVID-19 Italia - Monitoraggio ed Analisi della situazione

TETSTSHJBJHABJBABKBACBCKBAKBCKJB


telematics-logo

horizon2020

europe-flag