Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

tab: per family or other taxonomic rank #169

Closed
synrg opened this issue May 7, 2022 · 2 comments
Closed

tab: per family or other taxonomic rank #169

synrg opened this issue May 7, 2022 · 2 comments
Labels
enhancement New feature or request inat 🍃 iNaturalist cog obs iNaturalist observations taxon iNaturalist taxa

Comments

@synrg
Copy link
Collaborator

synrg commented May 7, 2022

Group results per family or other taxonomic rank, as in ,tab birds from home faves per family. See also other per issues #128 #130 #162.

I think it would be good to support such groupings not only for ,tab but maybe more usefully for the recently updated ,search obs feature which can produce results that are too numerous to page through one page at a time. A way this might be implemented is by having the pager list the individual families and counts for them, and then when selected via ✅ it navigates to the paged per-observation view. Reacting with ❌ would return back to the per-family view again.

This idea came out of a discussion with @sumie-dh on iNaturalist Discord who more generally wished for a way to do this (i.e. not specifically with Dronefly) to systematically browse through observations of flatworms with decent photos.

An approximation of what we want that can be done on the webapp is to do a search with &lrank=family and browse through each family in the species tab: https://www.inaturalist.org/observations?locale=en&lrank=family&popular&subview=map&taxon_id=52319&view=species But unfortunately, this falls short of delivering what was asked for because it only shows observations at rank family, and not also observations at ranks lower than that within the same family. So it seems there is no way to actually meet this need on the web, short of enumerating all of the families within the flatworms phylum Platyhelminthes, and then doing a search of each individual family.

Indeed, such enumeration is not easy on the webapp because their taxon browser is strictly hierarchical, with only one branch of the tree open to a given level at a time. Thus it is tedious to open tabs in one's web browser for each and every family within a taxon, as it involves a lot of navigating down and back up each branch of the tree. There's no simple way that I can find to produce a flat list of taxa within a phylum, or at least show them all on one page, with the exception being the new lifelist display. The lifelist, however, operates on one user's observations and is not suitable for viewing the whole iNaturalist dataset.

The API, however, makes this easy with /v1/taxa?taxon_id=52319&rank=family. That produces the input we need to make a paged view of all families. From there, the 2nd level pager could keep generating observations within that grouping until it ran out, and then could continue generating observations from the next one, and so on, until it reached the end.

@synrg synrg added enhancement New feature or request inat 🍃 iNaturalist cog taxon iNaturalist taxa obs iNaturalist observations labels May 7, 2022
@synrg
Copy link
Collaborator Author

synrg commented Sep 1, 2023

This is implemented so far as a command-specific option in ,life which searches life lists (not exclusively user life lists: they can be produced with any filters that ,tab supports). However, this means we still lack the ability to browse taxa that have not been observed. To do that would require some modifications to the code we did for life lists to support input of taxa from the /v1/taxa endpoint as described above.

@synrg
Copy link
Collaborator Author

synrg commented Sep 14, 2024

This is implemented so far as a command-specific option in ,life which searches life lists (not exclusively user life lists: they can be produced with any filters that ,tab supports). However, this means we still lack the ability to browse taxa that have not been observed. To do that would require some modifications to the code we did for life lists to support input of taxa from the /v1/taxa endpoint as described above.

The recently added ,taxon list command now provides this second part.

It's worth noting, though, that the two commands would need to be done separately for the Platyhelminthes family review use case: because ,life operates on observations but ,t list does not, only the former can be used to "systematically browse through observations of flatworms with decent photos". This command would start you at the level of families that are popular, sorting by ones with more observations first:

,life Platyhelminthes faves per family sort by obs

Then to fill in the gaps, you can list families with no observations with a taxon list with an ascending sort by obs:

,t list Platyhelminthes per family sort by obs

All families will be listed, including any without faves, and also 0-observation families.

@synrg synrg closed this as completed Sep 14, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request inat 🍃 iNaturalist cog obs iNaturalist observations taxon iNaturalist taxa
Projects
None yet
Development

No branches or pull requests

1 participant