I am working on a project where Users can interact with a Map via mouse click to see more details of an area. It is Perth Metropolitan Area Map. This Map is generated from PDF using online "PDF to SVG converter".
When I looked at generated SVG code it is so huge can't understand full of it. and did some research to see if i can find any simpler version of the Map, I see there are various options to construct SVG, detailed below.
Shapefiles : Creating maps based on real world data, I thought this is good option to go. but the problem I observed here is we need to depend on GIS tools and open databases where GIS data is available. It is too heavy for our requirement.
Geo JSON / Topo JSON : I see this is simple way to represent Maps in plain, but I could not figure out a way to generate required JSON files. After exploring more on this I understood these technologies are dependent on GIS / Shapefiles.
Inscape : UI editor to draw SVG - It is just generating lot of SVG code again.
After reviewing above all I kind of thinking may be I should learn to write own SVG map.
Can somebody advice whether I am in right direction or Are there any simple approaches to create a Map like this Perth Metropolitan Area Map ?
Thanks in advance.
Related
I'm trying to make my first Windows 10 UA desktop app. I have a working map, but it shows the road type of map. The problem with this is, the detail isn't there, and may people won't be able to get enough info out of this.
Is there a way I can switch the map view from a road to a satellite map?
Edited for response
Sorry I miss understood, didn't realize you where using the MapControl class. Below is a link that explains how to use 3d aerial and street views (towards the bottom)
https://msdn.microsoft.com/en-us/library/windows/apps/mt219695.aspx
the code you are looking for is something like
MapControl1.Style = MapStyle.Aerial3DWithRoads;
Absolutely! You can use the Bing maps API. http://www.microsoft.com/maps/choose-your-bing-maps-API.aspx
Here is a link to a guide on getting started.
https://msdn.microsoft.com/en-us/library/ff428643.aspx
From the API you can then select the satellite map instead of the road.
I have a geotiff that I have been working with in tilemill and I would like to select portions (buildings) in the map and create new layers as geojson objects. My issue is I don't know how to get the coordinates to create the objects!
http://chimera.labs.oreilly.com/books/1230000000345/ch12.html#_choropleth
this is a link to what I'm trying to do with states I just need the step where the coordinates are gotten because it doesn't seem to be in this document, they just give a shout to the guy who defined them. If anyone has done something similar to this, please give me a shout!
Update
I am not looking for the coordinates to the US, I have a fictional map that I am working from.
TileMill is a tool for visualizing data and creating map tiles - it isn't designed for creating or digitizing tasks. You'll want to export your map to Mapbox (or another MBTiles-supporting server), and use a tool like Mapbox's map editor or geojson.io to create GeoJSON overlays on top of it.
I want too build a web application, and I am looking at the tools I will have to use.
I want to use a real time map
I'm a thinking about :
Tilemill to get .png in order to constitue the background of my maps
or get data from a webite in shp files to build layers for this in mapnik.
Mapnik Build layers with the data I want to add on my map.
Mapnik : Put layers together and generate a map.
TileStache : generate tiles for my application.
Openlayers : Display my map with tiles in a browser.
Once my map is displayed, I'd like to add interactivity. For example when you go over a line or a circle (a town/ an event), then it gives you the attributes of this object.
But the lines and circles will integrated dirctly to the mapnik map, so I need to add some javascript to make it dynamic and open a pop-up. How do I do this ? Using Openlayer javascript libraries or node.js.
What is your advice on the question/the way I want to use theese tools?
Thanks a lot!
I'm in a similar situation, so I don't know the answer, but from what I've been able to figure out I think you're on the right track.
I started off using the Mapbox approach, which simplifies things as long as your data is static. You use Tilemill not only to generate your PNG tiles (once you've used Carto to do some nice styling) but also to import your data sets.
TileMill can export your TileJSON and UTFGrid files with the PNG tiles all packaged up and ready to use. Mapbox will then host all that stuff for you, and you can use their mapbox.js library (an extension of Leaflet) to bring it all together in the browser, with full interactivity. Opening popups would be something you'd do in Javascript in the browser - and if you mean infoWindows (the overlay window that's associated with a map point) then that would be a call to the Leaflet API.
If you're happy to create your layers and import your data offline this approach seems to be really simple and powerful; Mapbox will even render out tiles using multiple layers overlaid - so for example you can see your circles on top of a satellite image, merged into a single PNG.
The problem really comes in when your data needs to be live and you can't therefore prepare it all ahead of time in TileMill. I'm still trying to figure this all out but it does seem as though a combination of TileStache and Mapnik would be able to serve you up the TileJSON, GeoJSON and UTFGrid files you'd need as well as the tiles themselves, in the way you've outlined in the question.
You might also want PostGIS and GeoDjango or similar behind the scenes in order to hold and manage your live data, respectively.
As I said, I'm still trying to actually get my full stack working so I can't vouch for this 100% but if your data is gathered upfront then I'd definitely recommend the TileMill route for simplicity's sake.
I hope that's a help!
I need to render Graphviz DOT graphs in a browser. I also need some interactive functionality such as allowing node names to be hyperlinks.
I have tried using Canviz (Javascript renderer), but it doesn't handle large graphs very well. Many of my links also do not work on large graphs.
graphviz can also render .svg files which can be displayed by webbrowsers and can contain links etc
It's not cheap but mxGraph should do what you need.
Otherwise take a look at this question for some other suggestions.
Do you generate the graphs on the server, or are you looking for a client-side solution? If the graphs are generated server-side, graphviz is able to generate html imagemaps. See the example here http://www.graphviz.org/doc/info/output.html#d:imap.
We build this site with a combination of svg (exported from GraphViz) and javascript+svg for the interaction. The highlighting doesn't work in IE, but interaction still does, using imagemaps also generated from GraphViz. I don't know of any off-the-shelf solution.
Maybe give Cytoscape Web a try. Its parent project, Cytoscape, was built to visualize biological networks, but both generalize to any type of network. Cytoscape Web is a separate project that uses Flash as its engine, but is manipulable client-side through Javascript.
Hermann Stamm-Wilbrandt implemented a fiddler on top of
mdaines's compiled-to-javascript GraphViz implementation.
I want to create visuals along the lines of CNN's "red-state, blue-state" shadings of the states in the U.S. for my project. I'm planning to do something fancier than just shading the state's shape in a color. Are there open source libraries of state shapes/polygons (or - if not open source - others) that I can import into Word, Excel, etc. that I can use to show complicated graphs based on states?
I have Map Point, but haven't been able to figure out how to shade the states in a complex way.
you could try google charts, it looks like http://www.woot.com is doing something similar to what you need
Here is a good example using google maps... I've used code like that before.. perhaps from this exact example.
http://econym.org.uk/gmap/example_states2.htm
EDIT: you might want to consider converting the states.xml into JSON... it'll be smaller (136k of XML right now!) and should load faster in most browsers.
There might be a couple parts to the question you are asking, but to address the first part "Are there open source libraries of state shapes/polygons...", here's a resource to check out:
http://commons.wikimedia.org/wiki/Category:SVG_maps_of_the_United_States
It's a list of various SVG(scalable vector graphics) files which can be imported into a number of applications. Basically a giant xml representation of lines and endpoints. This can be directly converted to XAML, if you're into a more programmatic way of charting(ie, C# w/ Silverlight).
However, to address the second part regarding MS Office, Visio can import SVG files for manipulation as well. I'm unsure what type of graphs you were looking for, but I hope this can assist in some small way on your path to awesomeness ;)