13
13
< body >
14
14
< label > Election Type:</ label >
15
15
< 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 >
19
24
</ select >
20
25
<!-- Create a div where the graph will take place -->
21
26
< div id ="map "> </ div >
22
- < div id ="myDiv "> </ div >
23
27
</ body >
24
28
25
29
< script >
167
171
168
172
< script >
169
173
$ ( "#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 ;
171
177
//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 ) ;
174
189
// other election type ...
175
190
} ) ;
176
191
177
- async function presidentPlot ( files ) {
192
+ async function presidentPlot ( files , year ) {
178
193
//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 ) ;
182
197
//draw winner map
183
198
plotWinnerMap ( '2020' , dataByCity , candidateData ) ;
184
199
}
185
200
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 ) ;
191
206
//draw winner map
192
207
plotWinnerMap ( '2020' , dataByCity , candidateData ) ;
193
208
}
194
209
195
- presidentPlot ( files [ "president" ] ) ;
210
+ presidentPlot ( files [ "president" ] , 2016 ) ;
196
211
</ script >
0 commit comments