Progress since last time:
I completed the two additional dictionaries I had planned for and completed the user interface. There are probably a few tweaks I still need to make with spacing but it is for the most part complete. I have an option for the user to see a help menu but I still need to create the actual help instructions and link it to that option. I also still need to take user input for altering the columns of the data so that if a new dataset comes in with the columns at different indices, my program should be flexible to that. I’ve added to my milestones to reflect these additional tasks.
Milestones:
- Read all data into python lists
- Create a dictionary with each state as key and as value another dictionary with candidate as key and vote as value
- Create a dictionary with each candidate as key and as value another dictionary with state as key and vote as value
- Create a dictionary with each county as key and as value another dictionary with candidate as key and vote as value
- Create a dictionary with each county as key and as value another dictionary with party as key and vote as value
- Create a dictionary with each state as key and as value another dictionary with party as key and vote as value
- Build a user interface for the user to select three modes (state, candidate, and county)
- Have a help option to give the user directions on navigating the app
- Create actual help instructions
- For each mode, allow the user to enter any state, candidate, or county respectively and display the corresponding value(s)
- Allow the user to switch datasets
- Allow the user to enter different column addresses for the fields of data
- For any query, display the fraction of votes as a bar graph (composed of asterisks) as a function of the votes and the mode that the user has selected (so if the user is in state mode, display the number of votes for each state as a bar graph)
Overall the project is going well. The github repository can be found here.