Imageomics / Andromeda

A website that enables users to explore high-dimensional image data
http://andromeda.imageomics.org/
MIT License
2 stars 1 forks source link

Improve ease of use for QUEST 2023 #55

Closed johnbradley closed 1 year ago

johnbradley commented 1 year ago

Changes fetching observations logic to sort INaturalist observations to show the most recent observation. Unchecks specific columns to simplify use in QUEST 2023. Changes number of columns displayed on each row from 10 to 6 to make the screen easier to read.

Fixes #54

johnbradley commented 1 year ago

I'm not 100% happy with the changes to uncheck some column names. Here is what the screen looks like after uploading a dataset created in Fetch image data for dan_equids:

Screen Shot 2023-07-17 at 12 25 00 PM

Just looking at the screen to me it feel like the unchecked checkboxes are random. I would appreciate any suggestion on a better way to accomplish this change.

hlapp commented 1 year ago

Perhaps allow specifying some wildcard pattern to match columns to uncheck or check ("switch") on request. For example, sat_lon.* and sat_lat.*.

thompsonmj commented 1 year ago

It might look better if the columns were visually grouped with one another based on type. Something like ... Columns

johnbradley commented 1 year ago

It might look better if the columns were visually grouped with one another based on type. Something like ...

@thompsonmj My understanding is Andromeda is meant to work with any CSV and not just CSVs in the format created for QUEST. So trying to group the column names when the list of column names could be anything is rather challenging.

johnbradley commented 1 year ago

Perhaps allow specifying some wildcard pattern to match columns to uncheck or check ("switch") on request. For example, sat_lon. and sat_lat..

I'm not quite sure how this would look, but that it seems like quite a few patterns for a user to type into the box: sat_lon.*, sat_lat.*, land_lon.*, land_lan.* *._in, then uncheck Seconds.

The current list of columns to uncheck are here: https://github.com/Imageomics/Andromeda/blob/57216edea74087d582ed361a6d47c5e3b8b9cb4d/andromeda-ui/backend/parseCSV.ts#L4-L18

johnbradley commented 1 year ago

I'm wondering if I should add a button that will uncheck those QUEST "bad" columns. Or perhaps there could be some kind of convention in the CSV for columns that could hint that we should uncheck the column. Or perhaps I am overthinking this.

egrace479 commented 1 year ago

The current list of columns to uncheck are here:

https://github.com/Imageomics/Andromeda/blob/57216edea74087d582ed361a6d47c5e3b8b9cb4d/andromeda-ui/backend/parseCSV.ts#L4-L18

Aren't there also 2 distance from centroid columns that should be unchecked?

egrace479 commented 1 year ago

Is there a way to do the initial sort by the checked columns, so that all the unchecked columns are at the end?

hlapp commented 1 year ago

I'm not quite sure how this would look, but that it seems like quite a few patterns for a user to type into the box: sat_lon.*, sat_lat.*, land_lon.*, land_lan.* *._in, then uncheck Seconds.

Well, one could use (sat|land)_(lat|lon|in).* to capture 5 of the six, but I agree, that's more than simply a "wildcard" and would require some knowledge of regular expression language that most in the target audience likely won't have.

I agree allowing some externally kept list of "columns to hide" that would be custom to a specific deployment is perhaps for now the best way to deal with this. I.e., don't burden the user with specifying this, but make it something a deployment admin does.

johnbradley commented 1 year ago

Based on the above feedback I'm going to 1) Add a config file that lists what I am calling "ancillary columns". An admin could replace this config file with another to customize which column names are considered ancillary. 2) Working of @thompsonmj and @egrace479 's suggestion I will visually group the columns based on their type "regular" or "ancillary".

johnbradley commented 1 year ago

I finished updating the code to group column checkboxes based on a config file.