Streetart Straße

Everyday when I open up a taxi or ride-share app to book a ride to work or a meeting, I have noticed one detail that sticks out on my map: there are several points near my home that are labelled “Streetart Straße”. Indeed, beautiful murals on shophouses is a common sight in the area that I live in, but why on earth are these points being highlighted to me above other actual landmarks here?

Why is it in German? And why is it that it seems that this map item has been set to show even at the highest zoom levels where most other details are filtered out? (Map zoom levels refer to how at the lowest levels, you might only see continents and broad country labels, but at the highest level, you see cities and their details. Data is selectively shown at different zoom levels, so that the map remains readable).

So I decided to google it a bit…


Contributions by Clara95 on OpenStreetMap

The answer is mundane. It appears that a (likely born 1995, female) German traveller toured through Singapore, Thailand and Vietnam and decided to create a half dozen map points of Street art, fast food, pizza places, and bus stops on Openstreetmap.  ¯\_(ツ)_/¯

Not gonna lie when I remembered that OSM was editable that my response to seeing this (and it being that I’ve lived here for years and still haven’t left my mark on Openstreetmap unlike a traveller through these parts…) it immediately led me to this… reactivating my account…

I’ll report back when I’ve finally managed to make a positive or interesting dent in the REAL MAP OF THE WORLD…

* Oh but also not this kind of dent. I found this when browsing in editor view. Por… whoever you are, er… we don’t need to know your exact house unit!!!

Tilemill – Conditional Label Placement, Pseudo 3D Building Effects, and Polygon Patterns

Tilemill is an excellent tool for map design and development, which really provides ease of use through CartoCSS. For me, I think it is very accessible for designers/artists who might not have a clue about arc/gis but just want to design a map decently. Today I’m finalising the maps for my Paris Postdated project so I sat down to figure out a few things…

Conditional Label Placements

Microsoft Excel

I read a guide suggesting this method, which works. The funny thing is that I have not gotten it to properly “not overlap” in the past, and by setting it to “text-allow-overlap:false;” this usually results in NO LABELS at all. And in the end, sometimes I just want ONE or TWO labels to be done in another direction.

tilemilllabel

Solution: Created a new column called dir, and when dir = 1 it will be aligned to NW instead of NE.

Pseudo 3D Effects

TileMillpseudo3d

Pseudo 3D effects can be gotten for buildings as well. If my data had building heights (which sadly it does not) then I could multiply my height value by the actual height of the building! In other words, instead of this:

#building { building-height:5; }

you could actually have this (where “height” is the field in for your building height):

#building { building-height:[height]*5; }

Basically, values drawn onto the maps can be derived directly from attributes in one’s data source. So there is some room to be inventive in how you map out the values. Seems to work for a number of fields such as marker-width and marker-height and building-height. Probably works for directions/orientation of labels if your data has that…

Polygon Patterns

Another way in which to add texture to the maps is overlaying a pattern file over polygons. You can make your own, or alternatively Subtle Patterns has a whole bunch of useful patterns which are very suitable for overlaying onto your maps.

Screen Shot 2013-09-01 at 8.06.00 PM.png

There is a list of Compositing Operations (comp-op) available, including plus, minus, color-dodge, color-burn, invert, etc. You can use this to composite the pattern layer over the original colours selected, so the colours can be still fine-tuned live, along the way….

Map {
    polygon-pattern-file:url(images/patternfile.png);
    polygon-pattern-comp-op:multiply;
    polygon-pattern-alignment:global;
    polygon-gamma:0.5; 
}

In addition to that, there is also polygon-gamma (which you can set to around 0.5-1 and which will help make polygons sit together more seamlessly) and polygon-pattern-alignment, which can be local or global. Local means its just for that polygon, global mean its aligned to the overall metatile instead of each of the individual polygons. Here is an example of Singapore with some patterns…

Screen Shot 2013-09-01 at 8.11.04 PM.png

Well that was bit tiny. Also, these are only very simple, design-related operations. I’m having more difficulties figuring out how to use PostgreSQL and PostGIS to clean up some stuff, but I thought I’d at least document the easy parts first!…

UP Singapore Urban Prototyping Weekend – Postcode Postcard

Over the weekend I was at UP Singapore where there was a great big data hackathon with interesting datasets from places such as Singtel, Taxi, LTA, etc. We met loads of interesting people, learnt lots, had fun experimenting with the data, and at the end of the weekend, Me and Yuta (“Team Jalan Besar”) built this:

Screen shot 2012-06-28 at AM 07

The idea I had for the Postcode Postcard was to build a simple web app that aims to visualize the local mobile network data and other datasets in Singapore, and to render this into a physical postcard that can be printed on the spot and distributed as a real postcard that can be mailed to a friend who might not have an internet connection.

handcard

Many asked me why not just make it a visual on the iphone, but I feel the point of the physical postcard is because the people who need to see “big data” in this format are the ones who won’t be online with their smartphones to see it. How can a smart city be smart if not everyone can understand it?

P6245754

P6245761

(Our entry won 3rd prize and we got a Playbook!)