Is there any some web-gl js libraries for creating 3D bar overlap city map?

It's a sort of a bar chart overlaid upon a city map More details: http://ny.curbed.com/archives/2015/01/09/3d_map_shows_where_nyc_housing_is_priciest_cheapest.php


EDIT: To narrow the answer set, an interactive web mapping solution without data uploading will be the best answer.

  • @PolyGeo , I changed the titile to narrow the answer set. Aug 31 '15 at 3:12
  • Your question still seems to be seeking a list of options for you to choose from, and three have already been offered. Our remit (see the help center) is focussed Q&A about actual problems you face using GIS rather than putting together lists of software options, etc. If you try one of the options already offered and get stuck then that should provide you with suitable content for a new Q&A about it.
    – PolyGeo
    Aug 31 '15 at 3:21

You want to do it yourself?

Here's an example: http://agl.pw/examples/cesium/hobart.html

It's pretty easy to do. Let me know if you need to know more and I'll try to step through it.

  • Cool ! It's amazing! I want to know how can I do it by myself. Can I make this kind of 3D map demo in an offline environment ? Aug 13 '15 at 2:58
  • I should correct my question. I can have access to web but not uploading data. Aug 13 '15 at 7:38
  • Yes, just click the link in the bottom left, it takes you to cesiumjs.org Aug 13 '15 at 8:44

Alexgleith's answer seems to be directly related to the example in the question. However, there are other approaches that are also available and can be done in an offline environment.

If you have access to ArcGIS with 3D Analyst Extension then you can simply extrude your polygons by an appropriate attribute. However, 3D Analysts is expensive.

A free alternative is to use NViz from Grass (also available through the Processing Toolbox in QGIS). NViz is sort of the GRASS equivalent to ArcGIS' 3D Analyst extension. The principle is the same. Extrude your polygon data by an attribute.

Search this site and you will find more references to 3D Analyst and NViz.

Another 'left of field' approach specifically aimed at web mapping, would be to use the OSMBuildings tech. OSMBuildings can accept data as GeoJSON or served from a WFS server. It also doesn't need to be OSM data and nor does it have to be buildings as you can see in this example. All you need is an attribute called height. For information on how to use OSMBuildings in Leaflet or Openlayers plus some more examples, see this link. See the documentation in the GITHub readme. It is VERY easy to use.

  • Many Thanks! The solution you mentioned are very nice. I will have a try . If we have access to web without data uploading , what is the best approach including web mapping in your opinion ? Aug 13 '15 at 7:49
  • See my edit for another web-specific solution. Aug 13 '15 at 8:02

With the commercial software Mapviewer from Goldensoftwar http://www.goldensoftware.com/products/mapviewer producing this "Prism-Maps" is pretty easy: enter image description here

Not the answer you're looking for? Browse other questions tagged or ask your own question.