272 lines
16 KiB
HTML
272 lines
16 KiB
HTML
<!DOCTYPE html><html><head><title>Arizona - United States | Covid-19</title><meta charset="utf8"><link rel="stylesheet" href="/bootstrap.css"><script src="/Chart.bundle.js"></script><style>table td {
|
|
vertical-align: middle !important;
|
|
}
|
|
th.sorted, td.sorted {
|
|
background-color: #e0eefd;
|
|
}
|
|
.table-sm {
|
|
font-size: 80%;
|
|
}
|
|
</style><script>function makeSparkline(id, data) {
|
|
const canvas = document.getElementById(id);
|
|
const chart = new Chart(canvas.getContext('2d'), {
|
|
type: 'line',
|
|
data: {
|
|
labels: [1, 2, 3, 4, 5, 6, 7, 8, 10, 11, 12, 13, 14],
|
|
datasets: [{ data: data }],
|
|
},
|
|
options: {
|
|
responsive: false,
|
|
legend: {
|
|
display: false,
|
|
},
|
|
elements: {
|
|
line: {
|
|
borderColor: '#000000',
|
|
borderWidth: 1,
|
|
},
|
|
point: {
|
|
radius: 0,
|
|
},
|
|
},
|
|
tooltips: {
|
|
enabled: false,
|
|
},
|
|
scales: {
|
|
yAxes: [
|
|
{
|
|
display: false,
|
|
ticks: {
|
|
precision: 0,
|
|
beginAtZero: true,
|
|
}
|
|
},
|
|
],
|
|
xAxes: [
|
|
{
|
|
display: false,
|
|
},
|
|
],
|
|
}
|
|
}
|
|
});
|
|
}
|
|
|
|
function makeHeroChart(id, title, labels, totalDeaths, newDeaths) {
|
|
const canvas = document.getElementById(id);
|
|
const chart = new Chart(canvas.getContext('2d'), {
|
|
type: 'line',
|
|
data: {
|
|
labels: labels,
|
|
datasets: [
|
|
{
|
|
label: 'Total Deaths',
|
|
data: totalDeaths,
|
|
fill: true,
|
|
borderColor: 'rgb(196, 64, 64)',
|
|
borderWidth: 1,
|
|
backgroundColor: 'rgba(196, 128, 128, 0.25)',
|
|
},
|
|
{
|
|
label: 'New Deaths',
|
|
data: newDeaths,
|
|
fill: true,
|
|
borderColor: 'rgb(64, 64, 64)',
|
|
borderWidth: 1,
|
|
backgroundColor: 'rgba(128, 128, 128, 0.75)',
|
|
}
|
|
],
|
|
},
|
|
options: {
|
|
responsive: false,
|
|
title: {
|
|
display: true,
|
|
position: 'top',
|
|
text: title,
|
|
},
|
|
tooltips: {
|
|
intersect: false,
|
|
position: 'nearest',
|
|
axis: 'x',
|
|
},
|
|
scales: {
|
|
yAxes: [
|
|
{
|
|
display: true,
|
|
ticks: {
|
|
precision: 0,
|
|
beginAtZero: true,
|
|
}
|
|
},
|
|
],
|
|
xAxes: [
|
|
{
|
|
display: true,
|
|
},
|
|
],
|
|
}
|
|
}
|
|
});
|
|
}</script></head><body><div class="container"><h1>Covid-19 Data</h1><p class="text-muted"><em>Data from <a href="https://github.com/CSSEGISandData/COVID-19">Johns Hopkins CSSE</a>.
|
|
This page generated from latest data as of 2020-04-27T15:51:56.926Z.
|
|
</em></p><div class="main-content"><h2><a class="float-right" href="/countries/united-states.html" style="font-size: 50%">◀ United States</a>Arizona - United States</h2><div class="card mb-4"><div class="card-body"><canvas class="mx-auto" id="main-chart" width="800" height="450"></canvas><script>makeHeroChart(
|
|
'main-chart',
|
|
"Arizona",
|
|
["2020-01-22","2020-01-23","2020-01-24","2020-01-25","2020-01-26","2020-01-27","2020-01-28","2020-01-29","2020-01-30","2020-01-31","2020-02-01","2020-02-02","2020-02-03","2020-02-04","2020-02-05","2020-02-06","2020-02-07","2020-02-08","2020-02-09","2020-02-10","2020-02-11","2020-02-12","2020-02-13","2020-02-14","2020-02-15","2020-02-16","2020-02-17","2020-02-18","2020-02-19","2020-02-20","2020-02-21","2020-02-22","2020-02-23","2020-02-24","2020-02-25","2020-02-26","2020-02-27","2020-02-28","2020-02-29","2020-03-01","2020-03-02","2020-03-03","2020-03-04","2020-03-05","2020-03-06","2020-03-07","2020-03-08","2020-03-09","2020-03-10","2020-03-11","2020-03-12","2020-03-13","2020-03-14","2020-03-15","2020-03-16","2020-03-17","2020-03-18","2020-03-19","2020-03-20","2020-03-21","2020-03-22","2020-03-23","2020-03-24","2020-03-25","2020-03-26","2020-03-27","2020-03-28","2020-03-29","2020-03-30","2020-03-31","2020-04-01","2020-04-02","2020-04-03","2020-04-04","2020-04-05","2020-04-06","2020-04-07","2020-04-08","2020-04-09","2020-04-10","2020-04-11","2020-04-12","2020-04-13","2020-04-14","2020-04-15","2020-04-16","2020-04-17","2020-04-18","2020-04-19","2020-04-20","2020-04-21","2020-04-22","2020-04-23","2020-04-24","2020-04-25","2020-04-26"],
|
|
[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,2,2,5,6,8,13,15,17,20,25,32,35,44,52,64,65,73,89,98,106,117,125,132,143,155,164,183,180,184,191,208,231,249,266,273,275],
|
|
[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,0,3,1,2,5,2,2,3,5,7,3,9,8,12,1,8,16,9,8,11,8,7,11,12,9,19,-3,4,7,17,23,18,17,7,2],
|
|
);
|
|
</script></div></div><div class="table-responsive" id="table"><table class="table table-sm table-hover"><thead><tr><th>#</th><th data-col="name"><div class="d-inline-flex"><span class="sortables mr-2 d-inline-flex flex-column" style="font-size: 50%"><a href="#sort:name:asc">▲</a><a href="#sort:name:desc">▼</a></span><span>County/Region</span></div></th><th class="text-center" data-col="total"><div class="d-inline-flex"><span class="sortables mr-2 d-inline-flex flex-column" style="font-size: 50%"><a href="#sort:total:asc">▲</a><a href="#sort:total:desc">▼</a></span><span>Deaths</span></div></th><th class="text-center sorted" data-col="yesterday"><div class="d-inline-flex"><span class="sortables mr-2 d-inline-flex flex-column" style="font-size: 50%"><a href="#sort:yesterday:asc">▲</a><a href="#sort:yesterday:desc">▼</a></span><span>…since yesterday</span></div></th><th class="text-center" data-col="week"><div class="d-inline-flex"><span class="sortables mr-2 d-inline-flex flex-column" style="font-size: 50%"><a href="#sort:week:asc">▲</a><a href="#sort:week:desc">▼</a></span><span>…since last week</span></div></th><th class="text-center" data-col="month"><div class="d-inline-flex"><span class="sortables mr-2 d-inline-flex flex-column" style="font-size: 50%"><a href="#sort:month:asc">▲</a><a href="#sort:month:desc">▼</a></span><span>…month-to-date</span></div></th><th>Last 14 days</th></tr></thead><tbody><tr id="row-mohave" data-name="Mohave" data-total="4" data-yesterday="1" data-week="3" data-month="4"><td class="sort-order">1</td><td>Mohave</td><td class="text-right">4</td><td class="text-right sorted">1</td><td class="text-right">3</td><td class="text-right">4</td><td><canvas id="sparkline-0" width="200" height="50"></canvas><script>makeSparkline(
|
|
"sparkline-0",
|
|
[0,0,0,0,0,1,1,1,3,3,3,3,3,4],
|
|
);</script></td></tr><tr id="row-maricopa" data-name="Maricopa" data-total="122" data-yesterday="1" data-week="47" data-month="117"><td class="sort-order">2</td><td>Maricopa</td><td class="text-right">122</td><td class="text-right sorted">1</td><td class="text-right">47</td><td class="text-right">117</td><td><canvas id="sparkline-1" width="200" height="50"></canvas><script>makeSparkline(
|
|
"sparkline-1",
|
|
[52,54,60,64,69,70,75,75,83,97,115,120,121,122],
|
|
);</script></td></tr><tr id="row-unassigned" data-name="Unassigned" data-total="0" data-yesterday="0" data-week="-1" data-month="-13"><td class="sort-order">3</td><td>Unassigned</td><td class="text-right">0</td><td class="text-right sorted">0</td><td class="text-right">-1</td><td class="text-right">-13</td><td><canvas id="sparkline-2" width="200" height="50"></canvas><script>makeSparkline(
|
|
"sparkline-2",
|
|
[18,24,27,28,42,0,1,1,0,0,0,0,0,0],
|
|
);</script></td></tr><tr id="row-out-of-az" data-name="Out of AZ" data-total="0" data-yesterday="0" data-week="0" data-month="0"><td class="sort-order">4</td><td>Out of AZ</td><td class="text-right">0</td><td class="text-right sorted">0</td><td class="text-right">0</td><td class="text-right">0</td><td><canvas id="sparkline-3" width="200" height="50"></canvas><script>makeSparkline(
|
|
"sparkline-3",
|
|
[0,0,0,0,0,0,0,0,0,0,0,0,0,0],
|
|
);</script></td></tr><tr id="row-yuma" data-name="Yuma" data-total="1" data-yesterday="0" data-week="0" data-month="1"><td class="sort-order">5</td><td>Yuma</td><td class="text-right">1</td><td class="text-right sorted">0</td><td class="text-right">0</td><td class="text-right">1</td><td><canvas id="sparkline-4" width="200" height="50"></canvas><script>makeSparkline(
|
|
"sparkline-4",
|
|
[0,0,0,1,1,1,1,1,1,1,1,1,1,1],
|
|
);</script></td></tr><tr id="row-yavapai" data-name="Yavapai" data-total="1" data-yesterday="0" data-week="0" data-month="1"><td class="sort-order">6</td><td>Yavapai</td><td class="text-right">1</td><td class="text-right sorted">0</td><td class="text-right">0</td><td class="text-right">1</td><td><canvas id="sparkline-5" width="200" height="50"></canvas><script>makeSparkline(
|
|
"sparkline-5",
|
|
[1,1,1,1,1,1,1,1,1,1,1,1,1,1],
|
|
);</script></td></tr><tr id="row-santa-cruz" data-name="Santa Cruz" data-total="0" data-yesterday="0" data-week="0" data-month="0"><td class="sort-order">7</td><td>Santa Cruz</td><td class="text-right">0</td><td class="text-right sorted">0</td><td class="text-right">0</td><td class="text-right">0</td><td><canvas id="sparkline-6" width="200" height="50"></canvas><script>makeSparkline(
|
|
"sparkline-6",
|
|
[0,0,0,0,0,0,0,0,0,0,0,0,0,0],
|
|
);</script></td></tr><tr id="row-pinal" data-name="Pinal" data-total="9" data-yesterday="0" data-week="2" data-month="9"><td class="sort-order">8</td><td>Pinal</td><td class="text-right">9</td><td class="text-right sorted">0</td><td class="text-right">2</td><td class="text-right">9</td><td><canvas id="sparkline-7" width="200" height="50"></canvas><script>makeSparkline(
|
|
"sparkline-7",
|
|
[0,0,0,0,0,6,7,7,7,8,8,9,9,9],
|
|
);</script></td></tr><tr id="row-pima" data-name="Pima" data-total="76" data-yesterday="0" data-week="18" data-month="72"><td class="sort-order">9</td><td>Pima</td><td class="text-right">76</td><td class="text-right sorted">0</td><td class="text-right">18</td><td class="text-right">72</td><td><canvas id="sparkline-8" width="200" height="50"></canvas><script>makeSparkline(
|
|
"sparkline-8",
|
|
[29,29,29,29,29,56,56,58,65,68,70,74,76,76],
|
|
);</script></td></tr><tr id="row-navajo" data-name="Navajo" data-total="18" data-yesterday="0" data-week="7" data-month="18"><td class="sort-order">10</td><td>Navajo</td><td class="text-right">18</td><td class="text-right sorted">0</td><td class="text-right">7</td><td class="text-right">18</td><td><canvas id="sparkline-9" width="200" height="50"></canvas><script>makeSparkline(
|
|
"sparkline-9",
|
|
[8,9,10,11,11,11,11,11,11,12,13,18,18,18],
|
|
);</script></td></tr><tr id="row-la-paz" data-name="La Paz" data-total="1" data-yesterday="0" data-week="0" data-month="1"><td class="sort-order">11</td><td>La Paz</td><td class="text-right">1</td><td class="text-right sorted">0</td><td class="text-right">0</td><td class="text-right">1</td><td><canvas id="sparkline-10" width="200" height="50"></canvas><script>makeSparkline(
|
|
"sparkline-10",
|
|
[0,0,0,0,0,1,1,1,1,1,1,1,1,1],
|
|
);</script></td></tr><tr id="row-greenlee" data-name="Greenlee" data-total="0" data-yesterday="0" data-week="0" data-month="0"><td class="sort-order">12</td><td>Greenlee</td><td class="text-right">0</td><td class="text-right sorted">0</td><td class="text-right">0</td><td class="text-right">0</td><td><canvas id="sparkline-11" width="200" height="50"></canvas><script>makeSparkline(
|
|
"sparkline-11",
|
|
[0,0,0,0,0,0,0,0,0,0,0,0,0,0],
|
|
);</script></td></tr><tr id="row-graham" data-name="Graham" data-total="0" data-yesterday="0" data-week="0" data-month="0"><td class="sort-order">13</td><td>Graham</td><td class="text-right">0</td><td class="text-right sorted">0</td><td class="text-right">0</td><td class="text-right">0</td><td><canvas id="sparkline-12" width="200" height="50"></canvas><script>makeSparkline(
|
|
"sparkline-12",
|
|
[0,0,0,0,0,0,0,0,0,0,0,0,0,0],
|
|
);</script></td></tr><tr id="row-gila" data-name="Gila" data-total="0" data-yesterday="0" data-week="0" data-month="0"><td class="sort-order">14</td><td>Gila</td><td class="text-right">0</td><td class="text-right sorted">0</td><td class="text-right">0</td><td class="text-right">0</td><td><canvas id="sparkline-13" width="200" height="50"></canvas><script>makeSparkline(
|
|
"sparkline-13",
|
|
[0,0,0,0,0,0,0,0,0,0,0,0,0,0],
|
|
);</script></td></tr><tr id="row-coconino" data-name="Coconino" data-total="38" data-yesterday="0" data-week="7" data-month="35"><td class="sort-order">15</td><td>Coconino</td><td class="text-right">38</td><td class="text-right sorted">0</td><td class="text-right">7</td><td class="text-right">35</td><td><canvas id="sparkline-14" width="200" height="50"></canvas><script>makeSparkline(
|
|
"sparkline-14",
|
|
[21,22,24,26,26,29,26,31,31,35,32,34,38,38],
|
|
);</script></td></tr><tr id="row-cochise" data-name="Cochise" data-total="0" data-yesterday="0" data-week="0" data-month="0"><td class="sort-order">16</td><td>Cochise</td><td class="text-right">0</td><td class="text-right sorted">0</td><td class="text-right">0</td><td class="text-right">0</td><td><canvas id="sparkline-15" width="200" height="50"></canvas><script>makeSparkline(
|
|
"sparkline-15",
|
|
[0,0,0,0,0,0,0,0,0,0,0,0,0,0],
|
|
);</script></td></tr><tr id="row-apache" data-name="Apache" data-total="5" data-yesterday="0" data-week="1" data-month="5"><td class="sort-order">17</td><td>Apache</td><td class="text-right">5</td><td class="text-right sorted">0</td><td class="text-right">1</td><td class="text-right">5</td><td><canvas id="sparkline-16" width="200" height="50"></canvas><script>makeSparkline(
|
|
"sparkline-16",
|
|
[3,4,4,4,4,4,4,4,5,5,5,5,5,5],
|
|
);</script></td></tr></tbody></table></div></div></div><script>(function() {
|
|
const table = document.getElementById('table');
|
|
const headerRow = table.querySelector('thead tr');
|
|
const headers = [].slice.call(headerRow.querySelectorAll('th'));
|
|
const tbody = table.querySelector('tbody');
|
|
const allRows = [].slice.call(tbody.querySelectorAll('tbody tr'));
|
|
|
|
const resortTable = (col) => {
|
|
let nextChild = null;
|
|
const highlightedIndex = headers.findIndex(cell => cell.getAttribute('data-col') === col);
|
|
console.log(col, highlightedIndex);
|
|
headers.forEach((cell, i) => {
|
|
if (i !== highlightedIndex) {
|
|
cell.classList.remove('sorted');
|
|
} else {
|
|
cell.classList.add('sorted');
|
|
}
|
|
});
|
|
|
|
for (let i = allRows.length - 1; i >= 0; i--) {
|
|
const row = allRows[i];
|
|
if (!row) {
|
|
continue;
|
|
}
|
|
const cells = [].slice.call(row.querySelectorAll('td'));
|
|
cells.forEach((cell, i) => {
|
|
if (i !== highlightedIndex) {
|
|
cell.classList.remove('sorted');
|
|
} else {
|
|
cell.classList.add('sorted');
|
|
}
|
|
});
|
|
if (row === nextChild) {
|
|
continue;
|
|
}
|
|
|
|
tbody.insertBefore(row, nextChild);
|
|
row.querySelector('.sort-order').textContent = (i + 1).toString();
|
|
nextChild = row;
|
|
}
|
|
};
|
|
|
|
const handleSort = (value, dir) => {
|
|
const newSortDir = dir === 'desc' ? 'desc' : 'asc';
|
|
const sortByNumberThenName = (attr) => {
|
|
allRows.sort((a, b) => {
|
|
const aValue = Number(a.getAttribute('data-' + attr));
|
|
const bValue = Number(b.getAttribute('data-' + attr));
|
|
if (aValue === bValue) {
|
|
const aName = a.getAttribute('data-name');
|
|
const bName = b.getAttribute('data-name');
|
|
return aName && bName ? aName.localeCompare(bName) : 0;
|
|
}
|
|
|
|
return aValue < bValue ?
|
|
(newSortDir === 'asc' ? -1 : 1) :
|
|
(newSortDir === 'asc' ? 1 : -1);
|
|
});
|
|
resortTable(value);
|
|
};
|
|
|
|
switch (value) {
|
|
case 'name':
|
|
allRows.sort((a, b) => {
|
|
const aName = a.getAttribute('data-name');
|
|
const bName = b.getAttribute('data-name');
|
|
if (!aName || !bName) {
|
|
return -1;
|
|
}
|
|
if (newSortDir === 'asc') {
|
|
return aName.localeCompare(bName);
|
|
}
|
|
|
|
return bName.localeCompare(aName);
|
|
});
|
|
resortTable('name');
|
|
break;
|
|
case 'total':
|
|
sortByNumberThenName('total');
|
|
break;
|
|
case 'yesterday':
|
|
sortByNumberThenName('yesterday');
|
|
break;
|
|
case 'week':
|
|
sortByNumberThenName('week');
|
|
break;
|
|
case 'month':
|
|
sortByNumberThenName('month');
|
|
break;
|
|
}
|
|
};
|
|
|
|
const handleHash = (hash) => {
|
|
const sortValue = hash.replace(/^#sort:/, '').split(':');
|
|
handleSort(sortValue[0], sortValue[1]);
|
|
};
|
|
|
|
window.addEventListener('hashchange', () => {
|
|
handleHash(window.location.hash);
|
|
});
|
|
|
|
handleHash(window.location.hash);
|
|
}());</script></body></html> |