mirror of
https://github.com/captn3m0/plugo.git
synced 2024-09-07 22:46:45 +00:00
add some charts
This commit is contained in:
parent
cb2a8679c3
commit
d8d49d47a2
1
.gitignore
vendored
1
.gitignore
vendored
@ -3,3 +3,4 @@ _site
|
||||
.jekyll-cache
|
||||
.jekyll-metadata
|
||||
vendor
|
||||
.venv
|
16
_config.yml
16
_config.yml
@ -6,5 +6,17 @@ theme: minima
|
||||
baseurl: /plugo/
|
||||
url: https://captnemo.in
|
||||
timezone: Asia/Kolkata
|
||||
# mapboxtoken: pk.eyJ1IjoiY2FwdG4zbTAiLCJhIjoiY2wyYmdvNmcxMGYyMDNic2MyY3Rvd28yNiJ9.4IiMK807T05VEE2loTN1Jg
|
||||
mapboxtoken: pk.eyJ1IjoiY2FwdG4zbTAiLCJhIjoiY2pmanVvdWNkMHNmOTJ3bzNnYXIwcnpwZSJ9.C1N7hcYotH63uQjx5sk7Xg
|
||||
mapboxtoken: pk.eyJ1IjoiY2FwdG4zbTAiLCJhIjoiY2pmanVvdWNkMHNmOTJ3bzNnYXIwcnpwZSJ9.C1N7hcYotH63uQjx5sk7Xg
|
||||
exclude:
|
||||
- x.sh
|
||||
- .venv
|
||||
- _site
|
||||
- .jekyll-cache
|
||||
- Gemfile
|
||||
- Gemfile.lock
|
||||
- .git
|
||||
- .github
|
||||
- _config.yml
|
||||
- 404.html
|
||||
- CITATION.cff
|
||||
- "*.py"
|
@ -12,6 +12,26 @@ layout: default
|
||||
|
||||
</details>
|
||||
|
||||
<details open>
|
||||
<summary>Show Number of Locations by Time</summary>
|
||||
<div id="chart"></div>
|
||||
</details>
|
||||
|
||||
<details open>
|
||||
<summary>Show Number of Powerbanks by Time</summary>
|
||||
<div id="chart2"></div>
|
||||
</details>
|
||||
|
||||
<script src="https://d3js.org/d3.v7.min.js"></script>
|
||||
<style>
|
||||
.line {
|
||||
fill: none;
|
||||
stroke: steelblue;
|
||||
stroke-width: 2px;
|
||||
}
|
||||
</style>
|
||||
<script src="assets/chart.js"></script>
|
||||
|
||||
{{content}}
|
||||
|
||||
{% assign zeroPowerBankLocations = 0 %}
|
||||
|
99
assets/chart.js
Normal file
99
assets/chart.js
Normal file
@ -0,0 +1,99 @@
|
||||
// Set the dimensions and margins of the graph
|
||||
const margin = { top: 20, right: 30, bottom: 50, left: 50 };
|
||||
const width = 800 - margin.left - margin.right;
|
||||
const height = 400 - margin.top - margin.bottom;
|
||||
|
||||
// Append the svg object to the body of the page
|
||||
const svg1 = d3.select("#chart")
|
||||
.append("svg")
|
||||
.attr("width", width + margin.left + margin.right)
|
||||
.attr("height", height + margin.top + margin.bottom)
|
||||
.append("g")
|
||||
.attr("transform", `translate(${margin.left},${margin.top})`);
|
||||
|
||||
const svg2 = d3.select("#chart2")
|
||||
.append("svg")
|
||||
.attr("width", width + margin.left + margin.right)
|
||||
.attr("height", height + margin.top + margin.bottom)
|
||||
.append("g")
|
||||
.attr("transform", `translate(${margin.left},${margin.top})`);
|
||||
|
||||
// Parse the date / time
|
||||
const parseTime = d3.timeParse("%Y-%m-%d");
|
||||
|
||||
function d3Chart(data, svg) {
|
||||
// Format the data
|
||||
data.forEach(d => {
|
||||
d.date = parseTime(d.date);
|
||||
d.count = +d.count;
|
||||
});
|
||||
|
||||
// Set the ranges
|
||||
const x = d3.scaleTime().range([0, width]);
|
||||
const y = d3.scaleLinear().range([height, 0]);
|
||||
|
||||
// Scale the range of the data
|
||||
x.domain(d3.extent(data, d => d.date));
|
||||
y.domain([0, d3.max(data, d => d.count)]);
|
||||
|
||||
// Define the line
|
||||
const line = d3.line()
|
||||
.x(d => x(d.date))
|
||||
.y(d => y(d.count));
|
||||
|
||||
// Add the line path
|
||||
svg.append("path")
|
||||
.data([data])
|
||||
.attr("class", "line")
|
||||
.attr("d", line);
|
||||
|
||||
// Add the X Axis
|
||||
svg.append("g")
|
||||
.attr("transform", `translate(0,${height})`)
|
||||
.call(d3.axisBottom(x).tickFormat(d3.timeFormat("%b %y")));
|
||||
|
||||
// Add the Y Axis
|
||||
svg.append("g")
|
||||
.call(d3.axisLeft(y));
|
||||
|
||||
// Tooltip
|
||||
const tooltip = d3.select("body").append("div")
|
||||
.attr("class", "tooltip")
|
||||
.style("opacity", 0)
|
||||
.style("position", "absolute")
|
||||
.style("background", "#f9f9f9")
|
||||
.style("border", "1px solid #d3d3d3")
|
||||
.style("padding", "8px")
|
||||
.style("border-radius", "4px")
|
||||
.style("pointer-events", "none");
|
||||
|
||||
// Add circles for tooltip functionality
|
||||
svg.selectAll("dot")
|
||||
.data(data)
|
||||
.enter().append("circle")
|
||||
.attr("r", 3)
|
||||
.attr("cx", d => x(d.date))
|
||||
.attr("cy", d => y(d.count))
|
||||
.attr("fill", "steelblue")
|
||||
.on("mouseover", function(event, d) {
|
||||
tooltip.transition()
|
||||
.duration(200)
|
||||
.style("opacity", .9);
|
||||
tooltip.html(`Date: ${d3.timeFormat("%b %d, %Y")(d.date)}<br>Count: ${d.count}`)
|
||||
.style("left", (event.pageX + 5) + "px")
|
||||
.style("top", (event.pageY - 28) + "px");
|
||||
})
|
||||
.on("mouseout", function(d) {
|
||||
tooltip.transition()
|
||||
.duration(500)
|
||||
.style("opacity", 0);
|
||||
});
|
||||
}
|
||||
|
||||
d3.csv("location-count.csv").then(data =>{
|
||||
d3Chart(data, svg1)
|
||||
});
|
||||
|
||||
d3.csv("powerbank-count.csv").then(data =>{
|
||||
d3Chart(data, svg2)
|
||||
});
|
85
count.py
Normal file
85
count.py
Normal file
@ -0,0 +1,85 @@
|
||||
import pygit2
|
||||
import csv
|
||||
import concurrent.futures
|
||||
import msgspec
|
||||
from datetime import datetime
|
||||
|
||||
# Define the structure of the JSON data using msgspec
|
||||
class PowerbankData(msgspec.Struct):
|
||||
totalAvailablePowerbanks: int
|
||||
|
||||
# Function to calculate totalAvailablePowerbanks from JSON data
|
||||
def calculate_total_powerbanks(file_content):
|
||||
try:
|
||||
data = msgspec.json.decode(file_content, type=list[PowerbankData])
|
||||
total_powerbanks = sum(item.totalAvailablePowerbanks for item in data)
|
||||
return total_powerbanks
|
||||
except msgspec.DecodeError:
|
||||
return None
|
||||
|
||||
# Function to process a single commit and return results
|
||||
def process_commit(repo, commit):
|
||||
try:
|
||||
tree = commit.tree
|
||||
if '_data/plugo.json' in tree:
|
||||
blob = repo[tree['_data/plugo.json'].id]
|
||||
file_content = blob.data.decode('utf-8')
|
||||
total_powerbanks = calculate_total_powerbanks(file_content)
|
||||
if total_powerbanks is not None:
|
||||
commit_date = datetime.fromtimestamp(commit.commit_time).strftime('%Y-%m-%d')
|
||||
return commit_date, total_powerbanks
|
||||
except KeyError:
|
||||
pass
|
||||
return None
|
||||
|
||||
# Generator function to iterate through every 5th commit
|
||||
def iterate_commits(repo):
|
||||
commit_count = sum(1 for _ in repo.walk(repo.head.target, pygit2.GIT_SORT_TOPOLOGICAL))
|
||||
processed_count = 0
|
||||
skip_count = 0
|
||||
|
||||
for commit in repo.walk(repo.head.target, pygit2.GIT_SORT_TOPOLOGICAL):
|
||||
processed_count += 1
|
||||
if processed_count % 5 != 0:
|
||||
continue
|
||||
|
||||
skip_count += 1
|
||||
progress = (skip_count / (commit_count // 5)) * 100
|
||||
print(f'Processing commit {skip_count}/{commit_count // 5} ({progress:.2f}%)', end='\r')
|
||||
|
||||
yield commit
|
||||
|
||||
# Main function to process commits using concurrent.futures
|
||||
def main():
|
||||
# Open the repository
|
||||
repo_path = '.' # Assuming the script is run from the root of the repository
|
||||
repo = pygit2.Repository(repo_path)
|
||||
|
||||
# Prepare CSV output
|
||||
output = [['date', 'totalAvailablePowerbanks']]
|
||||
|
||||
# Process every 5th commit in parallel
|
||||
with concurrent.futures.ThreadPoolExecutor() as executor:
|
||||
futures = []
|
||||
for commit in iterate_commits(repo):
|
||||
future = executor.submit(process_commit, repo, commit)
|
||||
futures.append(future)
|
||||
|
||||
for future in concurrent.futures.as_completed(futures):
|
||||
result = future.result()
|
||||
if result:
|
||||
output.append(result)
|
||||
|
||||
# Sort output by date, excluding the header row
|
||||
output_sorted = sorted(output[1:], key=lambda x: datetime.strptime(x[0], '%Y-%m-%d'))
|
||||
output_sorted.insert(0, output[0]) # Insert the header row back
|
||||
|
||||
# Write the sorted output to CSV
|
||||
with open('output.csv', 'w', newline='') as csvfile:
|
||||
csvwriter = csv.writer(csvfile)
|
||||
csvwriter.writerows(output_sorted)
|
||||
|
||||
print("\nProcessing complete.")
|
||||
|
||||
if __name__ == "__main__":
|
||||
main()
|
6
location-count.csv
Normal file
6
location-count.csv
Normal file
@ -0,0 +1,6 @@
|
||||
---
|
||||
permalink: /location-count.csv
|
||||
# This generates a count for every date
|
||||
---
|
||||
date,count{%assign count = 0 %}{% assign locations = site.data.plugo | sort:'createdAt' %}{% for l in locations %}{%assign count = count|plus:1 %}
|
||||
{{l.createdAt|slice:0,10}},{{count}}{% endfor %}
|
|
838
powerbank-count.csv
Normal file
838
powerbank-count.csv
Normal file
@ -0,0 +1,838 @@
|
||||
date,count
|
||||
2022-03-05,2048
|
||||
2022-03-06,1969
|
||||
2022-03-07,1789
|
||||
2022-03-07,1888
|
||||
2022-03-08,1933
|
||||
2022-03-09,1915
|
||||
2022-03-10,1834
|
||||
2022-03-11,1610
|
||||
2022-03-12,1620
|
||||
2022-03-13,1644
|
||||
2022-03-14,1649
|
||||
2022-03-14,1900
|
||||
2022-03-15,1783
|
||||
2022-03-16,1827
|
||||
2022-03-17,1771
|
||||
2022-03-18,1852
|
||||
2022-03-19,1842
|
||||
2022-03-20,1839
|
||||
2022-03-21,1850
|
||||
2022-03-22,1865
|
||||
2022-03-23,1982
|
||||
2022-03-24,1942
|
||||
2022-03-25,1969
|
||||
2022-03-26,1960
|
||||
2022-03-27,1802
|
||||
2022-03-28,1879
|
||||
2022-03-29,1996
|
||||
2022-03-30,1950
|
||||
2022-03-31,1878
|
||||
2022-04-01,1936
|
||||
2022-04-02,1882
|
||||
2022-04-03,1856
|
||||
2022-04-04,1846
|
||||
2022-04-05,1869
|
||||
2022-04-06,1940
|
||||
2022-04-07,1873
|
||||
2022-04-08,1868
|
||||
2022-04-09,1841
|
||||
2022-04-10,1789
|
||||
2022-04-11,1781
|
||||
2022-04-12,1842
|
||||
2022-04-13,1876
|
||||
2022-04-14,1861
|
||||
2022-04-15,1924
|
||||
2022-04-16,1875
|
||||
2022-04-17,1800
|
||||
2022-04-18,1879
|
||||
2022-04-19,1621
|
||||
2022-04-20,1612
|
||||
2022-04-21,1594
|
||||
2022-04-22,1552
|
||||
2022-04-23,1583
|
||||
2022-04-23,1995
|
||||
2022-04-24,1868
|
||||
2022-04-25,1810
|
||||
2022-04-26,1888
|
||||
2022-04-27,1930
|
||||
2022-04-28,1857
|
||||
2022-04-29,1966
|
||||
2022-04-30,1942
|
||||
2022-05-01,1865
|
||||
2022-05-02,1912
|
||||
2022-05-03,1865
|
||||
2022-05-04,1906
|
||||
2022-05-05,1867
|
||||
2022-05-06,1892
|
||||
2022-05-07,1878
|
||||
2022-05-08,1870
|
||||
2022-05-09,1886
|
||||
2022-05-10,1874
|
||||
2022-05-11,1851
|
||||
2022-05-12,1967
|
||||
2022-05-13,1959
|
||||
2022-05-14,1967
|
||||
2022-05-15,1902
|
||||
2022-05-16,1911
|
||||
2022-05-17,1941
|
||||
2022-05-18,1901
|
||||
2022-05-19,2004
|
||||
2022-05-20,2053
|
||||
2022-05-21,2138
|
||||
2022-05-22,2151
|
||||
2022-05-23,2206
|
||||
2022-05-24,2235
|
||||
2022-05-25,2248
|
||||
2022-05-26,2286
|
||||
2022-05-27,2279
|
||||
2022-05-28,2205
|
||||
2022-05-29,2148
|
||||
2022-05-30,2120
|
||||
2022-05-31,2283
|
||||
2022-06-01,2296
|
||||
2022-06-02,2469
|
||||
2022-06-03,2424
|
||||
2022-06-04,2455
|
||||
2022-06-05,2302
|
||||
2022-06-06,2372
|
||||
2022-06-07,2378
|
||||
2022-06-08,2428
|
||||
2022-06-09,2336
|
||||
2022-06-10,2324
|
||||
2022-06-11,2408
|
||||
2022-06-12,2281
|
||||
2022-06-13,2281
|
||||
2022-06-14,2319
|
||||
2022-06-15,2315
|
||||
2022-06-16,2306
|
||||
2022-06-17,2262
|
||||
2022-06-18,2357
|
||||
2022-06-19,2282
|
||||
2022-06-20,2199
|
||||
2022-06-21,2231
|
||||
2022-06-22,2381
|
||||
2022-06-23,2379
|
||||
2022-06-24,2362
|
||||
2022-06-25,2342
|
||||
2022-06-26,2290
|
||||
2022-06-27,2363
|
||||
2022-06-28,2218
|
||||
2022-06-29,2227
|
||||
2022-06-30,2231
|
||||
2022-07-01,2197
|
||||
2022-07-02,2188
|
||||
2022-07-03,2139
|
||||
2022-07-04,2131
|
||||
2022-07-05,2172
|
||||
2022-07-06,2212
|
||||
2022-07-07,2122
|
||||
2022-07-08,2053
|
||||
2022-07-09,2118
|
||||
2022-07-10,2155
|
||||
2022-07-11,2038
|
||||
2022-07-12,2053
|
||||
2022-07-13,2088
|
||||
2022-07-14,2068
|
||||
2022-07-15,2095
|
||||
2022-07-16,2205
|
||||
2022-07-17,2117
|
||||
2022-07-19,2164
|
||||
2022-07-20,2144
|
||||
2022-07-21,2185
|
||||
2022-07-22,2141
|
||||
2022-07-23,2140
|
||||
2022-07-24,2057
|
||||
2022-07-25,2024
|
||||
2022-07-26,2156
|
||||
2022-07-27,2166
|
||||
2022-07-28,2146
|
||||
2022-07-29,2155
|
||||
2022-07-30,2155
|
||||
2022-07-31,2173
|
||||
2022-08-01,2137
|
||||
2022-08-02,2137
|
||||
2022-08-03,2134
|
||||
2022-08-04,2136
|
||||
2022-08-06,2219
|
||||
2022-08-07,2085
|
||||
2022-08-08,2163
|
||||
2022-08-09,2141
|
||||
2022-08-10,2121
|
||||
2022-08-11,2154
|
||||
2022-08-12,2132
|
||||
2022-08-13,2166
|
||||
2022-08-14,2053
|
||||
2022-08-15,2024
|
||||
2022-08-16,2080
|
||||
2022-08-17,2024
|
||||
2022-08-18,2054
|
||||
2022-08-19,1997
|
||||
2022-08-20,2045
|
||||
2022-08-21,1888
|
||||
2022-08-22,1961
|
||||
2022-08-23,1977
|
||||
2022-08-24,2161
|
||||
2022-08-25,2163
|
||||
2022-08-26,2191
|
||||
2022-08-27,2250
|
||||
2022-08-28,2135
|
||||
2022-08-29,2206
|
||||
2022-08-30,2217
|
||||
2022-08-31,2155
|
||||
2022-09-01,2240
|
||||
2022-09-02,2219
|
||||
2022-09-03,2247
|
||||
2022-09-04,2188
|
||||
2022-09-05,2227
|
||||
2022-09-06,2230
|
||||
2022-09-07,2347
|
||||
2022-09-08,2296
|
||||
2022-09-09,2248
|
||||
2022-09-10,2366
|
||||
2022-09-11,2159
|
||||
2022-09-12,2200
|
||||
2022-09-13,2272
|
||||
2022-09-14,2282
|
||||
2022-09-15,2257
|
||||
2022-09-16,2238
|
||||
2022-09-17,2252
|
||||
2022-09-18,2152
|
||||
2022-09-19,2182
|
||||
2022-09-20,2106
|
||||
2022-09-21,2203
|
||||
2022-09-22,2290
|
||||
2022-09-23,2216
|
||||
2022-09-24,2270
|
||||
2022-09-25,2212
|
||||
2022-09-26,2229
|
||||
2022-09-27,2235
|
||||
2022-09-28,2242
|
||||
2022-09-29,2140
|
||||
2022-09-30,2236
|
||||
2022-10-01,2213
|
||||
2022-10-02,2029
|
||||
2022-10-03,2139
|
||||
2022-10-04,2164
|
||||
2022-10-05,2114
|
||||
2022-10-06,2259
|
||||
2022-10-07,2185
|
||||
2022-10-08,2132
|
||||
2022-10-09,2055
|
||||
2022-10-10,2114
|
||||
2022-10-11,2151
|
||||
2022-10-12,2196
|
||||
2022-10-13,2198
|
||||
2022-10-14,2208
|
||||
2022-10-15,2189
|
||||
2022-10-16,2108
|
||||
2022-10-17,2179
|
||||
2022-10-18,2156
|
||||
2022-10-19,2138
|
||||
2022-10-20,2242
|
||||
2022-10-21,2227
|
||||
2022-10-22,2247
|
||||
2022-10-23,2206
|
||||
2022-10-24,2112
|
||||
2022-10-25,2138
|
||||
2022-10-26,2124
|
||||
2022-10-27,2113
|
||||
2022-10-28,2219
|
||||
2022-10-29,2170
|
||||
2022-10-30,2125
|
||||
2022-10-31,2198
|
||||
2022-11-01,2170
|
||||
2022-11-02,2186
|
||||
2022-11-03,2242
|
||||
2022-11-04,2168
|
||||
2022-11-05,2104
|
||||
2022-11-06,2107
|
||||
2022-11-07,2166
|
||||
2022-11-08,2116
|
||||
2022-11-09,2097
|
||||
2022-11-10,2122
|
||||
2022-11-11,2175
|
||||
2022-11-12,2024
|
||||
2022-11-13,2063
|
||||
2022-11-14,2170
|
||||
2022-11-15,2088
|
||||
2022-11-16,2171
|
||||
2022-11-17,2205
|
||||
2022-11-18,2235
|
||||
2022-11-19,2248
|
||||
2022-11-20,2161
|
||||
2022-11-21,2182
|
||||
2022-11-22,2217
|
||||
2022-11-23,2184
|
||||
2022-11-24,2228
|
||||
2022-11-25,2268
|
||||
2022-11-26,2264
|
||||
2022-11-27,2209
|
||||
2022-11-28,2218
|
||||
2022-11-29,2174
|
||||
2022-11-30,2259
|
||||
2022-12-01,2265
|
||||
2022-12-02,2245
|
||||
2022-12-03,2230
|
||||
2022-12-04,2160
|
||||
2022-12-05,2182
|
||||
2022-12-06,2199
|
||||
2022-12-07,2157
|
||||
2022-12-08,2173
|
||||
2022-12-09,2158
|
||||
2022-12-10,2172
|
||||
2022-12-11,2060
|
||||
2022-12-12,2086
|
||||
2022-12-13,2163
|
||||
2022-12-14,2183
|
||||
2022-12-15,2175
|
||||
2022-12-16,2160
|
||||
2022-12-17,2150
|
||||
2022-12-18,2036
|
||||
2022-12-19,2078
|
||||
2022-12-20,2151
|
||||
2022-12-21,2140
|
||||
2022-12-22,2101
|
||||
2022-12-23,2103
|
||||
2022-12-24,2110
|
||||
2022-12-25,2015
|
||||
2022-12-26,2084
|
||||
2022-12-27,2091
|
||||
2022-12-28,2113
|
||||
2022-12-29,2130
|
||||
2022-12-30,2137
|
||||
2022-12-31,2147
|
||||
2023-01-01,2088
|
||||
2023-01-02,2141
|
||||
2023-01-03,2103
|
||||
2023-01-04,2173
|
||||
2023-01-05,2139
|
||||
2023-01-06,2131
|
||||
2023-01-07,2066
|
||||
2023-01-08,2021
|
||||
2023-01-09,2057
|
||||
2023-01-10,2045
|
||||
2023-01-11,2025
|
||||
2023-01-12,2078
|
||||
2023-01-13,2095
|
||||
2023-01-14,2092
|
||||
2023-01-15,2016
|
||||
2023-01-16,2016
|
||||
2023-01-17,2010
|
||||
2023-01-18,2066
|
||||
2023-01-19,1175
|
||||
2023-01-20,2043
|
||||
2023-01-21,1992
|
||||
2023-01-22,2003
|
||||
2023-01-23,1975
|
||||
2023-01-24,1757
|
||||
2023-01-25,1802
|
||||
2023-01-26,1802
|
||||
2023-01-27,1774
|
||||
2023-01-28,1758
|
||||
2023-01-29,1695
|
||||
2023-01-30,1681
|
||||
2023-01-31,1667
|
||||
2023-02-01,1743
|
||||
2023-02-02,1751
|
||||
2023-02-03,1796
|
||||
2023-02-04,1781
|
||||
2023-02-05,1725
|
||||
2023-02-06,1752
|
||||
2023-02-07,1690
|
||||
2023-02-08,1774
|
||||
2023-02-09,1746
|
||||
2023-02-10,1691
|
||||
2023-02-11,1772
|
||||
2023-02-12,1699
|
||||
2023-02-13,1794
|
||||
2023-02-14,1747
|
||||
2023-02-15,1871
|
||||
2023-02-16,1777
|
||||
2023-02-17,1895
|
||||
2023-02-19,1584
|
||||
2023-02-20,1627
|
||||
2023-02-21,1611
|
||||
2023-02-22,1690
|
||||
2023-02-23,1627
|
||||
2023-02-24,1585
|
||||
2023-02-25,1682
|
||||
2023-02-26,1623
|
||||
2023-02-27,1694
|
||||
2023-02-28,1731
|
||||
2023-03-01,1684
|
||||
2023-03-02,1641
|
||||
2023-03-03,1742
|
||||
2023-03-04,1722
|
||||
2023-03-05,1625
|
||||
2023-03-06,1621
|
||||
2023-03-07,1641
|
||||
2023-03-08,1634
|
||||
2023-03-09,1611
|
||||
2023-03-10,1668
|
||||
2023-03-11,1662
|
||||
2023-03-12,1642
|
||||
2023-03-13,1715
|
||||
2023-03-14,1677
|
||||
2023-03-15,1685
|
||||
2023-03-16,1675
|
||||
2023-03-17,1639
|
||||
2023-03-18,1625
|
||||
2023-03-19,1572
|
||||
2023-03-20,1659
|
||||
2023-03-21,1692
|
||||
2023-03-22,1677
|
||||
2023-03-23,1636
|
||||
2023-03-24,1651
|
||||
2023-03-25,1669
|
||||
2023-03-26,1634
|
||||
2023-03-27,1727
|
||||
2023-03-28,1694
|
||||
2023-03-29,1690
|
||||
2023-03-30,1712
|
||||
2023-03-31,1710
|
||||
2023-04-01,1729
|
||||
2023-04-02,1683
|
||||
2023-04-03,1759
|
||||
2023-04-04,1666
|
||||
2023-04-05,1738
|
||||
2023-04-06,1784
|
||||
2023-04-07,1708
|
||||
2023-04-08,1700
|
||||
2023-04-09,1679
|
||||
2023-04-10,1758
|
||||
2023-04-11,1761
|
||||
2023-04-12,1770
|
||||
2023-04-13,1734
|
||||
2023-04-14,1624
|
||||
2023-04-15,1658
|
||||
2023-04-16,1613
|
||||
2023-04-17,1689
|
||||
2023-04-18,1663
|
||||
2023-04-19,1723
|
||||
2023-04-20,1743
|
||||
2023-04-21,1667
|
||||
2023-04-22,1725
|
||||
2023-04-23,1601
|
||||
2023-04-24,1649
|
||||
2023-04-25,1638
|
||||
2023-04-26,1665
|
||||
2023-04-27,1662
|
||||
2023-04-28,1652
|
||||
2023-04-29,1728
|
||||
2023-04-30,1719
|
||||
2023-05-01,1603
|
||||
2023-05-02,1700
|
||||
2023-05-03,1676
|
||||
2023-05-04,1680
|
||||
2023-05-05,1745
|
||||
2023-05-06,1796
|
||||
2023-05-07,1796
|
||||
2023-05-08,1776
|
||||
2023-05-09,1789
|
||||
2023-05-10,1642
|
||||
2023-05-11,1881
|
||||
2023-05-12,1878
|
||||
2023-05-13,1820
|
||||
2023-05-14,1826
|
||||
2023-05-15,1822
|
||||
2023-05-16,1790
|
||||
2023-05-17,1823
|
||||
2023-05-18,1814
|
||||
2023-05-19,1768
|
||||
2023-05-20,1856
|
||||
2023-05-21,1784
|
||||
2023-05-22,1781
|
||||
2023-05-23,1725
|
||||
2023-05-24,1764
|
||||
2023-05-25,1756
|
||||
2023-05-26,1791
|
||||
2023-05-27,1725
|
||||
2023-05-28,1683
|
||||
2023-05-29,1750
|
||||
2023-05-30,1770
|
||||
2023-05-31,1713
|
||||
2023-06-01,1709
|
||||
2023-06-02,1723
|
||||
2023-06-03,1689
|
||||
2023-06-04,1677
|
||||
2023-06-05,1594
|
||||
2023-06-06,1581
|
||||
2023-06-07,1649
|
||||
2023-06-08,1740
|
||||
2023-06-09,1694
|
||||
2023-06-10,1748
|
||||
2023-06-11,1726
|
||||
2023-06-12,1712
|
||||
2023-06-13,1706
|
||||
2023-06-14,1710
|
||||
2023-06-15,1774
|
||||
2023-06-16,1714
|
||||
2023-06-17,1651
|
||||
2023-06-18,1580
|
||||
2023-06-19,1638
|
||||
2023-06-20,1600
|
||||
2023-06-21,1544
|
||||
2023-06-22,1631
|
||||
2023-06-23,1620
|
||||
2023-06-24,1669
|
||||
2023-06-25,1603
|
||||
2023-06-26,1620
|
||||
2023-06-27,1626
|
||||
2023-06-28,1626
|
||||
2023-06-29,1588
|
||||
2023-06-30,1631
|
||||
2023-07-01,1656
|
||||
2023-07-02,1601
|
||||
2023-07-03,1609
|
||||
2023-07-04,1616
|
||||
2023-07-05,1594
|
||||
2023-07-06,1615
|
||||
2023-07-07,1584
|
||||
2023-07-08,1572
|
||||
2023-07-09,1534
|
||||
2023-07-10,1548
|
||||
2023-07-11,1532
|
||||
2023-07-12,1577
|
||||
2023-07-13,1513
|
||||
2023-07-14,1546
|
||||
2023-07-15,1541
|
||||
2023-07-16,1432
|
||||
2023-07-17,1468
|
||||
2023-07-18,1542
|
||||
2023-07-19,1567
|
||||
2023-07-20,1562
|
||||
2023-07-21,1566
|
||||
2023-07-22,1509
|
||||
2023-07-23,1506
|
||||
2023-07-24,1575
|
||||
2023-07-25,1526
|
||||
2023-07-26,1590
|
||||
2023-07-27,764
|
||||
2023-07-28,1631
|
||||
2023-07-29,1576
|
||||
2023-07-30,1521
|
||||
2023-07-31,1521
|
||||
2023-08-01,1595
|
||||
2023-08-02,1488
|
||||
2023-08-03,1530
|
||||
2023-08-04,1551
|
||||
2023-08-05,1573
|
||||
2023-08-06,1514
|
||||
2023-08-07,1525
|
||||
2023-08-08,1561
|
||||
2023-08-09,1557
|
||||
2023-08-10,1508
|
||||
2023-08-11,1562
|
||||
2023-08-12,1520
|
||||
2023-08-13,1431
|
||||
2023-08-14,1422
|
||||
2023-08-15,1388
|
||||
2023-08-16,1401
|
||||
2023-08-17,1408
|
||||
2023-08-18,1396
|
||||
2023-08-19,1408
|
||||
2023-08-20,1397
|
||||
2023-08-21,1430
|
||||
2023-08-22,1419
|
||||
2023-08-23,1372
|
||||
2023-08-24,1392
|
||||
2023-08-25,1471
|
||||
2023-08-26,1468
|
||||
2023-08-27,1456
|
||||
2023-08-28,1401
|
||||
2023-08-29,1462
|
||||
2023-08-30,1434
|
||||
2023-08-31,1444
|
||||
2023-09-01,1496
|
||||
2023-09-02,1499
|
||||
2023-09-03,1490
|
||||
2023-09-04,1469
|
||||
2023-09-05,1473
|
||||
2023-09-06,1526
|
||||
2023-09-07,1542
|
||||
2023-09-08,1510
|
||||
2023-09-09,1504
|
||||
2023-09-10,1473
|
||||
2023-09-11,1562
|
||||
2023-09-12,843
|
||||
2023-09-13,1573
|
||||
2023-09-14,1606
|
||||
2023-09-15,1614
|
||||
2023-09-16,1627
|
||||
2023-09-17,1562
|
||||
2023-09-18,1530
|
||||
2023-09-19,1559
|
||||
2023-09-20,1573
|
||||
2023-09-21,1567
|
||||
2023-09-22,1565
|
||||
2023-09-23,1585
|
||||
2023-09-24,1548
|
||||
2023-09-25,1513
|
||||
2023-09-26,1526
|
||||
2023-09-27,1480
|
||||
2023-09-28,1516
|
||||
2023-09-29,1458
|
||||
2023-09-30,1500
|
||||
2023-10-01,1500
|
||||
2023-10-02,1396
|
||||
2023-10-03,1548
|
||||
2023-10-04,1466
|
||||
2023-10-05,1500
|
||||
2023-10-06,1533
|
||||
2023-10-07,1491
|
||||
2023-10-08,1504
|
||||
2023-10-09,1527
|
||||
2023-10-10,1546
|
||||
2023-10-11,1596
|
||||
2023-10-12,1565
|
||||
2023-10-13,1604
|
||||
2023-10-14,1595
|
||||
2023-10-15,1538
|
||||
2023-10-16,1546
|
||||
2023-10-17,1562
|
||||
2023-10-18,1505
|
||||
2023-10-19,1541
|
||||
2023-10-20,1495
|
||||
2023-10-21,1567
|
||||
2023-10-22,1519
|
||||
2023-10-23,1555
|
||||
2023-10-24,1500
|
||||
2023-10-25,1526
|
||||
2023-10-26,1567
|
||||
2023-10-27,1541
|
||||
2023-10-28,1507
|
||||
2023-10-29,1538
|
||||
2023-10-30,1497
|
||||
2023-10-31,1536
|
||||
2023-11-03,1363
|
||||
2023-11-04,1390
|
||||
2023-11-05,1261
|
||||
2023-11-06,1337
|
||||
2023-11-07,1349
|
||||
2023-11-08,1366
|
||||
2023-11-09,1385
|
||||
2023-11-10,1364
|
||||
2023-11-11,1403
|
||||
2023-11-12,1398
|
||||
2023-11-13,1355
|
||||
2023-11-14,1356
|
||||
2023-11-15,1366
|
||||
2023-11-16,1378
|
||||
2023-11-17,1407
|
||||
2023-11-18,1342
|
||||
2023-11-19,1366
|
||||
2023-11-20,1364
|
||||
2023-11-21,1401
|
||||
2023-11-22,1359
|
||||
2023-11-23,1455
|
||||
2023-11-24,1396
|
||||
2023-11-25,1430
|
||||
2023-11-26,1375
|
||||
2023-11-27,1344
|
||||
2023-11-28,1395
|
||||
2023-11-29,1371
|
||||
2023-11-30,1392
|
||||
2023-12-01,1406
|
||||
2023-12-02,1390
|
||||
2023-12-03,1371
|
||||
2023-12-04,1398
|
||||
2023-12-05,1341
|
||||
2023-12-06,905
|
||||
2023-12-07,913
|
||||
2023-12-08,898
|
||||
2023-12-09,872
|
||||
2023-12-10,932
|
||||
2023-12-11,865
|
||||
2023-12-12,903
|
||||
2023-12-13,895
|
||||
2023-12-14,866
|
||||
2023-12-15,832
|
||||
2023-12-16,870
|
||||
2023-12-17,865
|
||||
2023-12-18,880
|
||||
2023-12-19,902
|
||||
2023-12-20,857
|
||||
2023-12-21,918
|
||||
2023-12-22,890
|
||||
2023-12-23,854
|
||||
2023-12-24,887
|
||||
2023-12-25,822
|
||||
2023-12-26,827
|
||||
2023-12-27,826
|
||||
2023-12-28,823
|
||||
2023-12-29,801
|
||||
2023-12-30,836
|
||||
2023-12-31,757
|
||||
2024-01-01,780
|
||||
2024-01-02,831
|
||||
2024-01-03,880
|
||||
2024-01-04,851
|
||||
2024-01-05,841
|
||||
2024-01-06,859
|
||||
2024-01-07,826
|
||||
2024-01-08,853
|
||||
2024-01-09,837
|
||||
2024-01-10,957
|
||||
2024-01-11,960
|
||||
2024-01-12,903
|
||||
2024-01-13,917
|
||||
2024-01-14,836
|
||||
2024-01-15,860
|
||||
2024-01-16,905
|
||||
2024-01-17,912
|
||||
2024-01-18,882
|
||||
2024-01-19,840
|
||||
2024-01-20,844
|
||||
2024-01-21,818
|
||||
2024-01-22,976
|
||||
2024-01-23,965
|
||||
2024-01-24,898
|
||||
2024-01-25,888
|
||||
2024-01-26,849
|
||||
2024-01-27,815
|
||||
2024-01-28,833
|
||||
2024-01-29,899
|
||||
2024-01-30,879
|
||||
2024-01-31,904
|
||||
2024-02-01,894
|
||||
2024-02-02,916
|
||||
2024-02-03,902
|
||||
2024-02-04,878
|
||||
2024-02-05,878
|
||||
2024-02-06,899
|
||||
2024-02-07,917
|
||||
2024-02-08,939
|
||||
2024-02-09,910
|
||||
2024-02-10,953
|
||||
2024-02-11,910
|
||||
2024-02-12,896
|
||||
2024-02-13,848
|
||||
2024-02-14,801
|
||||
2024-02-15,862
|
||||
2024-02-16,814
|
||||
2024-02-17,860
|
||||
2024-02-18,792
|
||||
2024-02-19,838
|
||||
2024-02-20,877
|
||||
2024-02-21,880
|
||||
2024-02-22,862
|
||||
2024-02-23,836
|
||||
2024-02-24,859
|
||||
2024-02-25,818
|
||||
2024-02-26,821
|
||||
2024-02-27,786
|
||||
2024-02-28,827
|
||||
2024-02-29,825
|
||||
2024-03-01,851
|
||||
2024-03-02,894
|
||||
2024-03-03,832
|
||||
2024-03-04,848
|
||||
2024-03-05,849
|
||||
2024-03-06,849
|
||||
2024-03-07,813
|
||||
2024-03-08,800
|
||||
2024-03-09,762
|
||||
2024-03-10,778
|
||||
2024-03-11,830
|
||||
2024-03-12,849
|
||||
2024-03-13,840
|
||||
2024-03-14,835
|
||||
2024-03-15,798
|
||||
2024-03-16,762
|
||||
2024-03-17,739
|
||||
2024-03-18,760
|
||||
2024-03-19,769
|
||||
2024-03-20,817
|
||||
2024-03-21,788
|
||||
2024-03-22,768
|
||||
2024-03-23,764
|
||||
2024-03-24,739
|
||||
2024-03-25,732
|
||||
2024-03-26,784
|
||||
2024-03-27,808
|
||||
2024-03-28,819
|
||||
2024-03-29,746
|
||||
2024-03-30,779
|
||||
2024-03-31,735
|
||||
2024-04-01,751
|
||||
2024-04-02,773
|
||||
2024-04-03,800
|
||||
2024-04-04,801
|
||||
2024-04-05,763
|
||||
2024-04-06,749
|
||||
2024-04-07,730
|
||||
2024-04-08,766
|
||||
2024-04-09,747
|
||||
2024-04-10,747
|
||||
2024-04-11,714
|
||||
2024-04-12,724
|
||||
2024-04-13,718
|
||||
2024-04-14,701
|
||||
2024-04-15,734
|
||||
2024-04-16,758
|
||||
2024-04-17,745
|
||||
2024-04-18,788
|
||||
2024-04-19,749
|
||||
2024-04-20,696
|
||||
2024-04-21,671
|
||||
2024-04-22,752
|
||||
2024-04-23,728
|
||||
2024-04-24,723
|
||||
2024-04-25,678
|
||||
2024-04-26,691
|
||||
2024-04-27,678
|
||||
2024-04-28,700
|
||||
2024-04-29,703
|
||||
2024-04-30,730
|
||||
2024-05-01,726
|
||||
2024-05-02,752
|
||||
2024-05-03,705
|
||||
2024-05-04,658
|
||||
2024-05-05,655
|
||||
2024-05-06,677
|
||||
2024-05-07,646
|
||||
2024-05-08,662
|
||||
2024-05-09,653
|
||||
2024-05-10,684
|
||||
2024-05-11,616
|
||||
2024-05-12,608
|
||||
2024-05-13,618
|
||||
2024-05-14,637
|
||||
2024-05-15,632
|
||||
2024-05-16,618
|
||||
2024-05-17,599
|
||||
2024-05-18,623
|
||||
2024-05-19,586
|
||||
2024-05-20,565
|
||||
2024-05-21,616
|
||||
2024-05-22,598
|
||||
2024-05-23,609
|
||||
2024-05-24,628
|
||||
2024-05-25,592
|
||||
2024-05-26,583
|
||||
2024-05-27,648
|
||||
2024-05-28,613
|
||||
2024-05-29,567
|
||||
2024-05-30,588
|
||||
2024-05-31,585
|
||||
2024-06-01,588
|
||||
2024-06-02,590
|
||||
2024-06-03,552
|
||||
2024-06-04,570
|
||||
2024-06-05,551
|
||||
2024-06-06,589
|
||||
2024-06-07,570
|
||||
2024-06-08,607
|
||||
2024-06-09,540
|
||||
2024-06-10,552
|
||||
2024-06-11,526
|
||||
2024-06-12,553
|
||||
2024-06-13,560
|
||||
2024-06-14,586
|
||||
2024-06-15,573
|
||||
2024-06-16,573
|
||||
2024-06-17,560
|
||||
2024-06-18,603
|
||||
2024-06-19,571
|
||||
2024-06-20,624
|
|
Loading…
Reference in New Issue
Block a user