Interwiki graphs

From Meta, a Wikimedia project coordination wiki

The interwiki bot now supports creating graph views to help you resolve interwiki conflicts.

Installing pydot[edit]

You will need pydot which is freely available here. pydot requires the free software Graphviz which is available for Windows, Linux and MacOS. You will also need pyparsing. To install pydot and pyparsing, you might need python-devel on some Linux distibutions.

Creating graphs[edit]

After installing pydot, set interwiki_graph = True in your user-config.py. If interwiki.py encounters a conflict, it will save a graph as a PNG graphic into your interwiki-graphs directory.

Other graphics formats are supported as well. For example, you can set interwiki_graph_formats = ['svg'] in your user-config.py. This also has the advantage that the SVG format allows hyperlinks; nodes will be clickable when you use SVG, leading to the respective wiki page.

Please note that it is currently not possible to properly render certain fonts, e.g. Japanese.

Node color Meaning
White filling normal page
Orange filling disambiguation page
Blue filling redirect
Red filling non-existing page
Green boundary page in other namespace than the entry page's one
Node shape Meaning
Rectangular one possibility detected for this language
Octagonal multiple possibilities detected for this language


Edge color Meaning
Black normal interwiki link
Orange Link connecting a disambiguation and a non-disambiguation page
Blue Link within the same wiki, e.g. redirect link
Red Link to a non-existing page
Green Link between pages in different namespaces

Examples[edit]

Note: These images were created before octagonal node shapes were implemented.

Here it's quite clear that the link from sv:Australopithecus anamensis to en:Australopithecine must be removed.
Here the problem is caused by ja: linking to a disambiguation page.
Here you have 3 groups: the middle one is the correct one, dealing with algebraic structures. The upper left group deals with universal algebras and the lower right one deals with abstract algebras. Try to eliminate all edges connecting two of these groups.
This graph is quite chaotic, but if you look carefully you will find hints which might help you to resolve the conflict.