1187 aladin skymap blocking load catalog per target#1190
Conversation
jchate6
left a comment
There was a problem hiding this comment.
I have some misgivings about these changes. I feel like we are losing a fair amount of utility for the skymap for the sake of accommodating unnavigable lists of targets.
The ability to manipulate which individual targets are displayed could be very useful when there are only a few.
I understand the 10k is just an arbitrary choice, but it's tiny for a full TOM DB. Is there an actual upper limit where performance is noticeably affected? It feels like we shouldn't have a warning as the default status for the page most TOMs use as their defacto home page.
|
|
||
| # If the queryset is too large, take a random sample | ||
| if target_count >= 10_000: | ||
| qs = qs.order_by('?')[:10_000] |
There was a problem hiding this comment.
I'd argue the most recently added would be better than random.
|
I'm happy to merge this into 1186 and see how users feel when everything is together. |
I'm super curious what functionality we are giving up? There are other (better) ways to hide individual markers, if that's what you need to do: for example, clicking one and choosing "hide". I think it's strange that the skymap shows 25 targets currently, even if I have 1000's in my database. Why 25? Because that's the number we landed on for pagination? Now that is arbitrary. In any place where a graph of objects like this appears, I think it's natural to assume that is represents all objects that match your filters, not just an arbitrarily small number of them that happen to map to what is currently shown in the table. Take a cone search for example. I want to find all objects within x arcseconds of some star. Wouldn't it be more natural to see a full representation of them, not just 25? I don't care what page of results I happen to be shown, pages have nothing to do with the question. 10k is an arbitrary upper limit, the actual limit on the map is much higher. Fine with bumping up this number. |
|
Good points. I think this is an issue of use cases. This display has different use cases based on circumstance and each TOM will use it differently, but our goal here is to make it flexible enough to meet those varied needs while having a sensible default functionality. The different use cases that I'm thinking of are as follows:
It's definitely flawed, but the ability to hide certain targets by name is definitely important functionality. I do not see a way to click on one and choose hide.
Agreed, but showing all of them effectively removes the utility of the plot. The idea was that displaying the targets on the page at least mapped the page to the plot so you could know exactly what was being displayed.
Agreed. Unless my filter is
Does it need to have a limit? Can we give the user the option to display the top N results? Do those points make sense? |
|
I added a limit filter, which should alleviate many of these issues. For example, only displaying the most recent 25 targets, in both the map and the table, would be achieved by entering 25 into the result limit filter. |
11ff3f3
into
1186-target-list-page-improvements
Uses a dedicated JSON endpoint to load targets for the Aladin map, making it efficient enough that all (well, up to 10k) targets that match a filter can be displayed on the map, instead of only the 25 in the current pagination page. This is much more intuitive and what I'd expect to see on the map.
The 10k number can be adjusted but at that point there's so many targets that it's not worth adding more as you won't really be able to see a difference.
This is important because with infinite scroll, it's not possible to keep what is displayed on the Aladin map consistent with the current "page".
Fixes #1187
Screencast.From.2025-02-26.10-35-47.mp4