[FEATURE] Expanded Documentation
See original GitHub issueIs your feature request related to a problem? Please describe. As I am using this library in my game I have had a few issues starting with this library.
- It took me ages to find the wiki table of content as it was right next to the “documentation” link. That documentation shouldn’t be the first thing user see since it’s not great to start using the library.
- Took me a little while to understand the Edge class are oriented
- Took me a long while to understand how to filter edges in a search algorithm
Describe the solution you’d like I would like to contribute to the wiki in the following ways:
-
Rename the table of content to “Getting started with Quick Graph”, or find a way to make it stand out more (maybe a second link a bit higher in the home page).
-
Add a tooltip on the create graph page in order to remind people that the Edge class is oriented.
-
I want to contribute on the depth first search example to add an example of filtering just to help people start :
Filtered search : When going through all the tree is undesired, QuikGraph can use the outEdgesFilter function to avoid going in undesirable areas of the graph. The following example shows how to filter edges of a currently visited vertex.
AdjacencyGraph<TVertex, Edge<TVertex>> graph;
// Setup your graph the way you want
IEnumerable<Edge<TVertex>> Filter(IEnumerable<Edge<TVertex>> edges)
{
// Your filtering algorithm here
}
// Creation of the algorithm
var bfs = new DepthFirstSearchAlgorithm<TVertex, Edge<TVertex>>(null, graph, new QuikGraph.Collections.Queue<TVertex>(), new Dictionary<TVertex, GraphColor>(), Filter);
Additional context By the way, nice job maintaining the library man. It’s been a little hard to start using it but it works wonders.
Issue Analytics
- State:
- Created 3 years ago
- Comments:5 (3 by maintainers)

Top Related StackOverflow Question
Ah yes, that is my mistake, I was using the bfs in my code.
Yep, do not hesitate!
Hum, note for the DFS algorithm, you’re maybe confusing with the BreadthFirstSearchAlgorithm (BFS), here in the example I used the DepthFirstSearchAlgorithm. The constructor difference between those algorithms is indeed the queue not needed in the first one.
Because the page is talking about DFS, I prefered using the DepthFirstSearchAlgorithm for the example rather than BreadthFirstSearchAlgorithm.