<div dir="ltr">Thanks a lot everyone.  Don't need it for a project at the moment but looking around for a client.</div><div class="gmail_extra"><br><div class="gmail_quote">On Fri, Jun 19, 2015 at 8:50 AM, Mark Wynter <span dir="ltr"><<a href="mailto:mark@dimensionaledge.com" target="_blank">mark@dimensionaledge.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="auto"><div><span></span></div><div><span>I'd also recommend igraph.</span></div><div><span></span>Description below describes how I'm using igraph (cut and paste from an earlier private email conversation).</div><div><br></div><div>I still use grass for some aspects of topology cleaning (eg messy OSM data), but igraph thereafter.</div><div><br></div><div>This is how I'm using igraph currently...</div><div><br><span></span><blockquote type="cite"><div class="gmail_extra"><div class="gmail_quote"><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);padding-left:1ex"><font color="#000000"><span style="background-color:rgba(255,255,255,0)">I use igraph directly from postgis via pl/r wrappers. I use it mainly for least cost routing instead of pgrouting. Besides igraph being a very fast routing engine, it opens up possibilities to embed the inputs or outputs within other analytics processes or visualizations.<br><br>I've written igraph postgis functions that take<br>wkb_geoms and build an igraph directed network object.<br><br>Other postgis custom functions then query the network and return<br>-Node to node Shortest path<br>-Node to multinode shortest paths<br>-Mode - inward vs outward directed shortest paths<br>- travel distance matrices<br>-all of the above using R's parallel computing capabilities<br>- anything else which canbe done in igraph or R, and returned to Postgresql/postgis.<br><br>I then use the results to build polylines, isochrones and cost surfaces on the fly using the new KNN lateral query pattern in postgis.<br><br>And when you create a Postgis materialized view that calls these igraph functions, we can present dynamic QGIS visualizations. So if you drag the location of a hospital in QGIS, you see the postgis isochrones or accessibility surface immediately update when you hit save.<br><br>The other thing to bear in mind is that igraph also comes as a python library so you might be able to mash up the line graphs into a QGIS panel - and instead of calling igraph in postgis via pl/r, you call it via pl/Python.  Arguably you don't need postgis if you can access the igraph Python lib directly from qgis.</span></font></blockquote></div></div></blockquote><span class=""><span></span><br><blockquote type="cite"><span>My recommendation would be igraph (<a href="http://igraph.org/" target="_blank">http://igraph.org/</a>).</span><br></blockquote><blockquote type="cite"><span>Powerful, Open Source (<a href="https://github.com/igraph" target="_blank">https://github.com/igraph</a>), well documented, and comes with Python, and C++ and R interfaces.</span><br></blockquote><blockquote type="cite"><span>I used it in the r.connectivity.network addon for GRASS 6 and was quite happy with it!</span><br></blockquote><blockquote type="cite"><span></span><br></blockquote><blockquote type="cite"><span>Cheers</span><br></blockquote><blockquote type="cite"><span>Stefan</span><br></blockquote></span></div></div><br>_______________________________________________<br>
Qgis-developer mailing list<br>
<a href="mailto:Qgis-developer@lists.osgeo.org">Qgis-developer@lists.osgeo.org</a><br>
<a href="http://lists.osgeo.org/mailman/listinfo/qgis-developer" rel="noreferrer" target="_blank">http://lists.osgeo.org/mailman/listinfo/qgis-developer</a><br></blockquote></div><br></div>