Skip to content

Commit 93d75a4

Browse files
committed
add year selector
1 parent 12823df commit 93d75a4

File tree

1 file changed

+32
-17
lines changed

1 file changed

+32
-17
lines changed

index.html

+32-17
Original file line numberDiff line numberDiff line change
@@ -13,13 +13,17 @@
1313
<body>
1414
<label>Election Type:</label>
1515
<select id="electionType">
16-
<option>president</option>
17-
<option>legislator-at-large</option>
18-
<option>legislator</option>
16+
<option value="president">president</option>
17+
<option value="legislator-at-large">legislator-at-large</option>
18+
<option value="legislator">legislator</option>
19+
</select>
20+
<label>Year:</label>
21+
<select id="year">
22+
<option value="2016">2016</option>
23+
<option value="2020">2020</option>
1924
</select>
2025
<!-- Create a div where the graph will take place -->
2126
<div id="map"></div>
22-
<div id="myDiv"></div>
2327
</body>
2428

2529
<script>
@@ -167,30 +171,41 @@
167171

168172
<script>
169173
$("#electionType").on("change", function (e) {
170-
let selectedFiles = files[e.target.value];
174+
let electionType = document.getElementById("electionType").value
175+
let selectedFiles = files[electionType];
176+
let year = +document.getElementById("year").value;
171177
//redraw here ...
172-
if (e.target.value == "president") presidentPlot(selectedFiles);
173-
if (e.target.value == "legislator-at-large") legislatoratlargePlot(selectedFiles);
178+
if (electionType == "president") presidentPlot(selectedFiles, year);
179+
if (electionType == "legislator-at-large") legislatoratlargePlot(selectedFiles, year);
180+
// other election type ...
181+
});
182+
$("#year").on("change", function (e) {
183+
let electionType = document.getElementById("electionType").value
184+
let selectedFiles = files[electionType];
185+
let year = +document.getElementById("year").value;
186+
//redraw here ...
187+
if (electionType == "president") presidentPlot(selectedFiles, year);
188+
if (electionType == "legislator-at-large") legislatoratlargePlot(selectedFiles, year);
174189
// other election type ...
175190
});
176191

177-
async function presidentPlot(files) {
192+
async function presidentPlot(files, year) {
178193
//todo: years have 2016 and 2020
179-
let dataBtNation = await d3.csv(files["2016"].by_nation);
180-
let dataByCity = await d3.csv(files["2016"].by_city);
181-
let candidateData = await d3.csv(files["2016"].candidate);
194+
let dataByNation = await d3.csv(files[year].by_nation);
195+
let dataByCity = await d3.csv(files[year].by_city);
196+
let candidateData = await d3.csv(files[year].candidate);
182197
//draw winner map
183198
plotWinnerMap('2020', dataByCity, candidateData);
184199
}
185200

186-
async function legislatoratlargePlot(files) {
187-
//todo: years have 2016 and 2020
188-
let dataBtNation = await d3.csv(files["2016"].by_nation);
189-
let dataByCity = await d3.csv(files["2016"].by_city);
190-
let candidateData = await d3.csv(files["2016"].candidate);
201+
async function legislatoratlargePlot(files, year) {
202+
console.log("hi")
203+
let dataByNation = await d3.csv(files[year].by_nation);
204+
let dataByCity = await d3.csv(files[year].by_city);
205+
let candidateData = await d3.csv(files[year].candidate);
191206
//draw winner map
192207
plotWinnerMap('2020', dataByCity, candidateData);
193208
}
194209

195-
presidentPlot(files["president"]);
210+
presidentPlot(files["president"], 2016);
196211
</script>

0 commit comments

Comments
 (0)