bpda-research-division / neighborhood-change

Explore historical change in Boston's neighborhoods through dynamic visualizations (R Shiny)
https://bpda-research.shinyapps.io/neighborhood-change/
GNU General Public License v2.0
2 stars 2 forks source link

Add general topics #47

Closed mciethan closed 1 year ago

mciethan commented 1 year ago

fixes #46

instead of a single list of topics containing indicators, we now have "general topics" like demographics, housing, businesses, which becomes its own drop down menu, with specific topics contained within those general topics

Based on feedback from Mandy, I'd like to try some additional steps:

mciethan commented 1 year ago

Checkboxes are a decent idea, and R Shiny supports them (https://rdrr.io/cran/shiny/man/checkboxGroupInput.html). There are things to figure out, though. For one, making sure that having 0 checkboxes selected behaves in a reasonable way. That should either result in everything (charts, map, slider) being blank, or it should act like you've selected all the topics.

Also, for general topic parameters, you need some way of concatenating stuff across multiple general topics. That implies foreclosing the possibility of general topic parameters besides the topics, because how would you concatenate different parameters. I'm ok with that, and happy to embrace the general topic as more of a filtering condition than an nesting layer, as long as CONFIG and server are refactored to just have the list of topic names rather than having the additional list named "topics" that we currently do.

However, we could go farther in that direction and treat the general topics as tags which one topic could have multiple of. If that's even a remote possibility, then it's better to revert to topics as the outer structure and instead have a tags parameter for topics which we then collect upon app load in order to create a grouped checkbox at the top of the controls.

UI-wise, I think we can have "Filter topics by subject", "Choose a topic", and "Choose a variable".

I may end up creating a separate branch since the structure is going to be more similar to main than to this branch.

mciethan commented 1 year ago

Mandy and I decided that general topics should act like tags / filters (not like containers) of specific topics. There is therefore no need (and some harm in user experience) for having a new dropdown menu to select general topics first. Will start a different branch to implement general topics as a checklist that filters the specific topics menu.