.NET graph library around? [closed]
Use a combination of QuickGraph (GitHub, CodePlex) and Graph# for WPF (GitHub fork, CodePlex) – both top notch libraries. They work really well for me but the documentation for Graph# is almost non-existant.
Use a combination of QuickGraph (GitHub, CodePlex) and Graph# for WPF (GitHub fork, CodePlex) – both top notch libraries. They work really well for me but the documentation for Graph# is almost non-existant.
One way to analyze these is in terms of memory and time complexity (which depends on how you want to access the graph). Storing nodes as objects with pointers to one another The memory complexity for this approach is O(n) because you have as many objects as you have nodes. The number of pointers (to … Read more
I hope this is helpful to anybody having trouble understanding computational time complexity for Breadth First Search a.k.a BFS. Queue graphTraversal.add(firstVertex); // This while loop will run V times, where V is total number of vertices in graph. while(graphTraversal.isEmpty == false) currentVertex = graphTraversal.getVertex(); // This while loop will run Eaj times, where Eaj is … Read more
For ChartJs 2.x only a couple changes need to be made (it looks like you have tried to combine 2.x options with the multi-axes options from my fork?), The yAxes field needs to be in a scales object the yAxis is referenced by id not name. For the scale steps/size you just need to wrap … Read more
The correct method to use, in order to be able to draw another chart on the same canvas, is .destroy(). You must call it on the previously created chart object. You may also use the same variable for both charts. var grapharea = document.getElementById(“barChart”).getContext(“2d”); var myChart = new Chart(grapharea, { type: ‘bar’, data: barData, options: … Read more
I like the above solutions, but they do have the drawback that you need to keep track of the ranges and means over all your data. This could be cumbersome if you have multiple data sets that will be plotted together. To fix this, I made use of the ax.get_[xyz]lim3d() methods and put the whole … Read more
To make reading of this page more valuable (for future search results) I made a list of libraries known to me.. As @CommonsWare mentioned there are super-similar questions/answers.. Anyway some libraries that can be used for making charts are: Open Source: AnyChart (Free for non-commercial, Paid for commercial) MPAndroidChart Holo Graph Library aChartEngine ChartView aFreeChart … Read more
Simple bar graph: set boxwidth 0.5 set style fill solid plot “data.dat” using 1:3:xtic(2) with boxes data.dat: 0 label 100 1 label2 450 2 “bar label” 75 If you want to style your bars differently, you can do something like: set style line 1 lc rgb “red” set style line 2 lc rgb “blue” set … Read more
Dijkstra’s shortest path algorithm is O(ElogV) where: V is the number of vertices E is the total number of edges Your analysis is correct, but your symbols have different meanings! You say the algorithm is O(VElogV) where: V is the number of vertices E is the maximum number of edges attached to a single node. … Read more
The easiest way I’ve found to create postscripts is the following, using the setEPS() command: setEPS() postscript(“whatever.eps”) plot(rnorm(100), main=”Hey Some Data”) dev.off()