performant-software / Neatline

A lightweight framework for building interactive maps and publishing them on the web.
www.neatline.org
Other
105 stars 34 forks source link

Display Multiple Items at one Address/Location #462

Open lasantangelo opened 5 years ago

lasantangelo commented 5 years ago

Hello--Is it possible for neatline to display multiple items (in this case, events) at one address? It seems to only display one item/address, rather than the multiple I imported.

rondauva commented 5 years ago

Hello @lasantangelo,

I'm not sure that I completely understand your question, so I'm going to throw a couple of answers out, and you can tell me if I'm close to giving you the information you need, ok?

  1. A Neatline item can have multiple map annotations. As an example, if you were creating an exhibit about Stonehenge, and you wanted to mark all the locations of the blue stones, you might want to just have one Neatline record that talked about those stones, and so you'd draw shapes around the all the locations where they once stood, and all of these shapes would share one descriptive text block and title. In this case, any click on any one of those annotations will bring up the same item record pop-up.

  2. You can layer as many map annotations as you want to over a location on the map. For example, one building in a city that had several important events occur inside it, each event represented by a separate Neatline item. In this example, the way that you layer those annotations becomes very important to allow users to access all the records associated with a location. Some ways of handling that include using the Z-index values to indicate the stacking order of the annotations, and drawing them in such a way as to allow the user to have a "handle" to click in order to pull up the Neatline record associated with each annotation, and changing each annotation's fill color so it was clear that several annotations were overlaid on each other.

Another option is to use minimum and maximum zoom levels associated with each annotation. As an example, if you were annotating a WWI battle location, from a zoomed out viewpoint, you could include records that talked about the area, the general troop movements on each side, and delineate locations of field hospitals, fall back positions, command posts, etc. You would fill in min and max zoom values for each of these annotations so that they were only visible to users when the map was zoomed out between two different values, for example from zoom level 13-10, a user could see these more general information annotations. Then you can zoom in the viewport to zoom level 8 or 9 and create another "layer" of annotations with more specific information about the events and locations you gave general information about at higher zoom levels, again filling in the min and max zoom levels for each of these items so that they're only visible at max zoom level 9. What you need to consider in this scenario is how you will help your users navigate between these two levels of map annotations, since it won't be obvious to a viewer that zooming in will provide more information.

I hope this helped! Please do let me know if you were asking something else. I'm happy to refine the information I'm offering until you have what you need.

Best, Ronda

lasantangelo commented 5 years ago

Dear Ronda,

Thanks for your response! It's the second option I'd be curious to learn more about. I have imported the data through the CSV Import plug-in and included WKT coverage with the import (so I didn't actually draw anything manually on the maps). Can you tell me more about the Z-index?

Here's the project I'm talking about: http://www.mappingsuffrage.com/neatline/show/1870-suffrage#records

Several of those addresses are associated with multiple events, but only one displays per address. Others years (yet to be imported) have hundreds of data points so I'm trying to avoid manually drawing the annotation and instead using the WKT coverage field.

Thanks!

Lauren

rondauva commented 5 years ago

Lauren,

I saw your message yesterday, and I'm pondering how to design such an exhibit. I also need to check in with our R&D team re: the WKT coverage behavior on import. I hope to have a response ready for you by the end of the day. Thanks for your patience!

re: the Z-index This is just a mechanism used to order layers of annotation on the base layer. You set this value on the Style tab, in the Dimensions section of the sidebar. Here's the text from the pop-up help in Neatline:

_"The "stacking" order of vector annotations and WMS layers on the map. For example, imagine you have one record that includes a polygon that traces the shape of Manhattan, and another record that traces the shape of Central Park. Since Central Park is contained inside of Manhattan, you'll want the Central Park polygon to be displayed "on top of" the Manhattan polygon - otherwise, it would be impossible for the user to click on Central Park.

Z-indexes are just relative numbers that control the display order, with higher numbers stacking above lower numbers. So, in this case, you could set the Z-Index on Manhattan to 1, and the Z-Index on Central Park to 2, and Central Park would always be displayed on top of Manhattan."_

Z-indexes don't have to be unique numbers, so the only thing you need to remember is to make the annotations you want "on the bottom" to have the lowest number.

R.

lasantangelo commented 5 years ago

Thanks, Ronda! I'll appreciate any insight you have.