GSoC: World maps with annotated observations #1291
Replies: 4 comments 3 replies
-
Hello developers, I am Rishikesh Suryavanshi and I am currently pursuing a bachelor's in Information Technology at Pune Institute of Computer Technology. Being a second-year student I have become confident and fairly experienced in Web development languages including Javascript, CSS, Bootstrap, React, and different frontend as well as backend frameworks. This project falls well in my current capabilities and I will be very excited to work on this. I suggest that this be made a new map type as some users will by default prefer this type of representation while others want. Also using the right layout and size will be tremendously important to not make the map look cluttered or disoriented. I look forward to hearing from you and further working on this project. Thank you for reading, |
Beta Was this translation helpful? Give feedback.
-
Hello, @danyx23 as I said I have successfully set up the grapher codebase in Visual Studio Code with remote container and docker, and I have also looked into the working of the code along with running a few tests. Here are some images of the same. As I already said that this project seems most appropriate for me as I feel by working on this project I will be able to contribute to the community and increase global understanding and insights into multiple important topics. This will help users get an instant big picture and understand the general trend of any particular topic of importance. So I feel strongly to contribute to this project for the GSOC 2022 program to the best of my knowledge and ability. I do have doubt because I have not worked on such a large-scale project before, but I know that the mentors will guide me at any dead ends and I am sure that I can pull this off. I will soon request PR for some good first issues. Meanwhile, I have also sent you a proposal draft through the mail, please provide me with your valuable feedback and let me know if any changes need to be done. I will submit my final GSOC 2022 proposal on google's site by the 15th or 16th of April, so it will be great if you could evaluate my draft before that. Very Excited and looking forward to working on this project with you and all other mentors. |
Beta Was this translation helpful? Give feedback.
-
Hi, My name is Emmanuel Aiyenigba, I'm a software engineer with about 5 years of experience building products using modern technologies such as JavaScript, Typescript, React, Redux, and Node.js. I am interested in contributing to this project. I believe that bringing annotated observations to World maps will help shape data visualization with very minimal actions required. I just submitted my proposal and I will appreciate if the mentors can help review it - getting a feedback needed to effect a change to the proposal might not be possible given that the application is closing in a few hours. I hope I make it into this program. I really look forward to working with and learning from you all. Best, |
Beta Was this translation helpful? Give feedback.
-
I tried this one and it was awkward. @danyx23 @larsyencken this actually pulls apart that borders array to show how different countries are built with regards to the challenge in this discussion, focusing on a few useful examples. Then because part of my challenge was to push the envelope a bit, I also add some graphs to the map. Simplest wayGet furthest N, E, S and W points, make a box, get the center. Try Norway. Concave boxSome algorithm online will do the opposite but it's not as easy as one might think, especially when Canada is spread over 50 elements and some countries are shaped like Senegal. Manual positioningYep. I find where the rigid logic of computers crashes into the organic nature of life and humanity we end up with manual code. I add country labelling to translations, tax systems (and translated country labels) as my examples of stuff that you could program but it would end up more complex than manual. They're just too human. Or maybe I am wrong. First of all they need to be visually centered with zoom level considered, then sometimes two bits of a country have two names (Italy and Sicily) or several bits have just one name. Sometimes centering isn't actually right visually, or you need to place two labels off-center in opposite directions so they don't overlap. Given therer are only 200 or so this is what I went for, it's not the "code" solution, but sometimes one needs to know when to drop ther code and use the human. Plus it's actually easier for non-tech folk, like researchers and translators. I don't have continents yet, though I do have a file building up the ID sets for about 30 different WB/political entities etc. and they'll need labels done the same way. Some of these will overlap (G7, EU, NATO). This system should scale easily, so a world can exist where researchers can group countries in way that suits their story. But, the array does have sensible center variables for country names in English (and most in German). It would be easy to augment with a callback that allowed editing to add data or replace the name. The text is also centered in SVG as default (using the SVG text align attributes). The maps in the OP also show the semi-circular/ring style labeling I describe here. The code
Italy zoomedGraphsThis bit was more fun, and benefited from the array structure and the common pattern for data shared between Histograms and DragGraphs. Complicated data can be shown per country, in country but I don't know how well this works. The graphs are all different scales and detail and they are fully functional tiny versions of the bigger ones (with bits switched off) - but the zoom is essential here, it's probably a feature, if it's any use, where a portion of a map is focused on to show just a few countries. However, I have now taken this out, my prefered direction is to have the selected countries build up grouped histograms, linegraphs, or whatever, depending on data. So map and graph-set would define the cleanest look at the data of the page. This I think I might work on next, I've been interested in it for a while. Still though, there might be use, selecting one country at a time and showing that country's regions. Or just letting the user have it and mess it if they like. The codeThis just shows the array in action, the code just loads either the histogram or a drag graph. Separately I'm now working with the same base structure for each graph because that feels like a good idea, so the grouped histogram is the same as the drag-graph, ideally there's a special place where the data can be put into either without much pain (convention over configuration).
|
Beta Was this translation helpful? Give feedback.
-
DIFFICULTY: HARD, SIZE: 350 HOURS
Overview
World maps are a tremendous place to get an overview of a topic, but as we currently use them at Our World In Data, you have to mouse over a country to get the details of a data point. However, alternative map designs manage to annotate countries with observations, increasing the amount of insight you can get by glancing at the map.
For example, the following maps demonstrate the concept of annotating observations directly onto the map.
Technically, the challenge is to identify the layout and size of annotations, to add units where possible, and to mark small nations and islands effectively. By implementing this feature, you will contribute to global understanding of multiple important topics.
Required skills
Expected outcomes
Potential mentors
Beta Was this translation helpful? Give feedback.
All reactions