OCHA-DAP / hdx-signals

HDX Signals
https://un-ocha-centre-for-humanitarian.gitbook.io/hdx-signals/
GNU General Public License v3.0
5 stars 0 forks source link

IPC map improvements #165

Closed zackarno closed 2 weeks ago

zackarno commented 1 month ago

looking at the below for reference.

image

a few points that I think would make map more appealing:

  1. Make phase title: "IPC phase"
  2. remove black dots from phase legend and make phase legend key rectangles have border
  3. Does phase 2 color represent everything below 3? if so perhaps legend label should be <3 or ≤2 ? If phases 1 & 2 are supposed to be visualized (i'd prefer this) I'd make sure all factor legends are present on map. I think keeping all phases is better as people are used to that color ramp and we are making it clear that we only trigger on 3+
  4. The phase 2 color looks basically transparent in this example -- I wouldn't use any transparent colors?
  5. I'd consider adding the IPC phase level classification definitions in the legend or at least somewhere in email (1 - acceptable, 2 - alert, 3 - critical ...)

In this particular map the lining up of the phase and admin boundaries looks a bit odd, but not sure if thats actually an alignment issue or if the grey slivers are other LHZs/zones w/ phase <3

caldwellst commented 1 month ago
  1. Make phase title: "IPC phase"

Agreed.

  1. remove black dots from phase legend and make phase legend key rectangles have border

Agreed. However, the overall issue is that the levels of phases differ across points and polygons hence the legend issues. There is no transparent phase 2 color, the color is correct, you can see the yellow dot. It's just that the dots aren't showing fill color, and there is only phase 3 in the polygons so the legend only shows that. What we need is to map polygons with all levels seen across polygons AND points, and then just not have the legend for the points.

This resolves your 3. and 4. because we are showing all phases, it's only the legend that is incorrect, and we have no transparent colors.

  1. I'd consider adding the IPC phase level classification definitions in the legend or at least somewhere in email (1 - acceptable, 2 - alert, 3 - critical ...)

I think that's too much information. We have to expect users to develop some level of familiarity with the IPC data if they don't have it already, and don't want to have too much context in every email. Let's see how we go though and maybe I"m overestimating the capacity of people who will receive this.

caldwellst commented 1 month ago

Just to note: we DO NOT want to show all 5 phases in the map legend, however, because the map legend does serve the purpose of showing the range of phase classifications in this analysis.

zackarno commented 1 month ago

noting 2 more things:

I would have thought you wanted it more like this (but aligned, and idk how to get the key not grey for settlement type yet). One color bar for both points and polys. Shapes would need to be separate?

image
zackarno commented 1 month ago

no idea how to get those legends aligned though. I didn't see simple solutions - some leads on including additional libraries, but none super straightforward.

after typing the above initially, I realized that legends are not aligned on main either when run on my computer, rather only aligned from runner.

Therefore, if the version above from runner produces legends that are aligned it would just be a matter of removing the bg fill color from the settlement key.

However, i think there may be a more pressing concern of horizontal placed legends - i think this issue will be present in current main as well.

caldwellst commented 1 month ago

So annoying about the legends! Really weird. We don't want all levels plotted, though. We ONLY want the levels seen in the dataset. Because the legend is actually telling everyone what phase classifications are in this map. Otherwise, you have to really scan the map to understand what classifications have been made.

zackarno commented 1 month ago

ok let's not deal with the annoying legend issue in the open PR #163 which was started mainly to address LAC labels, that way we can keep the discussions separate, merge that one more quickly, and address this one once it's clear and we have a good solution. My mistake for starting to include it, I will revert back 56e47c2 to get feedback on labelling approach there.

Okay so you are saying you want:

What we need is to map polygons with all levels seen across polygons AND points, and then just not have the legend for the points.

But we still need the legend for point shapes, right?

Happy to try to implement as you described, but I think there are some issues:

Also can you remind me how the settlement classifications (points/shapes) are worked into the actual alert mechanism (or just point to doc? there used to be readmes? I guess getting replaced by the gitbook?)? I found it odd that this info was not clear in the email, but I am thinking this is intentional - perhaps makes sense to have a separate discussion on this point more generally elsewhere. If settlement classifications are not directly built in I would def consider removing the point coloring as it will be confusing/misleading to a lot of people without additional explanations - this would also make legend issue simpler.

Anyways, can just go w/ as you described (if we can figure out legend placement issues), those are just some points for thought/discussion.

caldwellst commented 4 weeks ago

Sorry Zack, was so busy at the workshop and then rested my brain, so late to respond here. I definitely see your points on readability, and think we are trying to strike a balance here between explaining the IPC system and having standalone, interpretable maps for users with limited knowledge vs. streamlining the maps to assume a base level of knowledge.

I think since Signals is intended to be a product that users repeatedly use, I have been leaning towards the latter setup. In this way, I think we need to expect users to have some familiarity with the system. And with that, we can make sure information is as clear to the user as possible, such as using the legend to show what area phases are classified in the current setup.

However, what this highlights to me, maybe we want a How to read the visuals section in all of the dataset documentations on GitBook? See the current documentation here! https://un-ocha-centre-for-humanitarian.gitbook.io/hdx-signals

So, if you agree with that, we can have a separate issue to create these visual sections. Then, to fix this, I think what we want is to edit the shape type in the legend to be shape = 21, which would allow us to see the points actually have area fill? That would be simple and then allow the user to see clearly where the points have a certain class and when the polygon areas do?

caldwellst commented 4 weeks ago

Other option is to still stick with not showing points on the area phases section, and just have single color blocks for all area phases seen in the data, for both polygon and points.

zackarno commented 4 weeks ago

Other option is to still stick with not showing points on the area phases section, and just have single color blocks for all area phases seen in the data, for both polygon and points.

Yes! this is what I thought I was trying to do in the last screenshot. You can see I almost got it here, but still had some remaining issue trying to align both legends as well as remove background on the settlement type legend.

Assuming those 2 could be fixed i think the only discrepancy in what we are saying is that you would prefer to only show colors that are present in the classification? I think this could be a little odd in certain edge cases (i.e we have 2 & 4 on legend, but not 3), but not a huge deal

caldwellst commented 3 weeks ago

Yeah, might be odd in those cases but I think should be relatively few. I checked the historical examples and can only see it happen when we have phase 0 (the rare cases where areas are given 0 population and an area phase of 0, like Abyei from the Sudan analysis ha). Otherwise, it's always a continuous drift.

And yes, agreed other than alignment then that should be good to go! I think the other change I would make is you changed the legend to say "IPC phase" and I think "Area phase" would be better since we know it's IPC/CH, and this distinguishes it as the area phase classification.

Then good to go!