Mind-mapping tools


© Lead Image © kudryashka, 123RF.com

© Lead Image © kudryashka, 123RF.com

Article from Issue 216/2018

Mind maps are designed to help display processes and projects clearly in a graphical format. This review explores the design possibilities offered by five mind map programs.

Structuring complex processes is part of the daily grind in many organizations. To help people understand their decision and thought processes, mind-mapping programs depict process steps graphically. Users can view an onscreen tree view to visualize dependencies.

However, visual clarity depends on the design possibilities offered by the mind-mapping program: Illustrations break up abstract content, and different font attributes emphasize the relevance of individual project steps. I tested five mind map programs to see how their design features compare.


CmapTools [6], developed at the Florida Institute for Human and Machine Cognition, is available for several platforms. Its license is proprietary, but the software is free of charge. The website also features a server variant for an on-premises server and an iPad version. You can also use CmapTools in the cloud, which does not require a dedicated application on the client, just a web browser.

CmapTools is a Java application and therefore needs a Java Runtime Environment. The 180MB package is a bit unconventional: You can call the binary package directly after setting the execution rights (chmod u+x), and an installation wizard launches. The wizard creates a user-defined directory and unpacks the program files.

Binaries do not automatically end up in the usual /usr/bin or /opt directories. Instead, you have to put in some manual work – even if you just want to launch the program from the menu.

The CmapTools graphical user interface (GUI) shuns common conventions: It opens with two independent empty windows. One window contains the work project; the other is used for controlling and configuring the software (Figure 1). The second window also displays the individual projects in a tree view later.

Figure 1: CmapTools stands out because of its unusual appearance.

You define your concept map in the right-hand window by first generating a new node with a double-click in the work area and then populating it with text by double-clicking on the four question marks within the node.

You can connect two nodes using the arrow symbols above the source node and dragging the resulting line to the target node. To label the line, click on the question marks that are automatically inserted in the middle of the line.

CmapTools offers a dialog in the Format | Styles menu that lets you adapt the graphical appearance. CmapTools accesses the fonts built into your operating system but does not support all available font sizes. Additionally, the program offers various backgrounds from templates, which you can access via a symbol chart.

The Cmap tab lets you colorize the entire view's background and save user-selected sections separately. If you want to combine related groups in a box to visually highlight them, you can use the nested node function. Select Tools | Nested Node | Create. After selecting the area to represent the container, you can edit the appearance of the group of objects combined in the nested node.

For example, you can highlight the nested node with its own background color and adjust the color of the items inside. You can also add shadows or special fonts, attributes, and font sizes. The nested node acts like a dedicated node: Arrows pointing to it look like normal nodes (Figure 2).

Figure 2: Nested nodes in CmapTools allow a wide variety of design options.

A special feature of CmapTools is the ability to attach multimedia content to nodes. These extensions then appear as small symbols at the node's edge. Clicking the symbol plays the linked media (external applications handle this task). You can add matching links to the content nodes using Edit | Add & Edit Links to Resources and File | Add Web Address.

In addition to various cloud functions and options designed for collaborative work, CmapTools also supports exporting to various formats: You can export a worksheet to PDF, PS, SVG, XTM/XCM, CXL, and IVML. You can also save a mind map in JPEG format or as a web page.

A printed version of the mind map did not exhibit any quality defects in our lab. Fonts appeared clear and without raster effects, and the program reproduced attributes and frames as shown on the screen.


Freeplane [7], a fork from the FreeMind project, is another cross-platform, Java-based application available for Linux under the GPLv2 license. Freeplane is desktop-only software; you will search in vain for a server or cloud variant.

You will need to install Freeplane manually in your menu structure. The program comes with a conventional desktop featuring a large empty space for designing and displaying mind maps (Figure 3,) with a menu and buttonbar above for access to important functions.

Figure 3: Freeplane shows an example mind map at startup.

Use File | New map to create a root node. Further nodes are created by pressing the Insert key. Freeplane automatically adds a connecting line to the root node. If you select one of the newly created nodes with a simple left-click and then press Insert, you will create another hierarchy level with a new node starting from the selected node. In this way, you can add nested hierarchies to your mind map.

If you a select higher level node and press Enter, a node is created at the same hierarchy level. Freeplane automatically draws a connecting line from the higher level in the node hierarchy when you create a new node, which makes it easy to identify individual hierarchies at a glance. If you want to delete nodes, just press the Delete key.

Freeplane positions the individual nodes freely, often resulting in compromised clarity, especially with mind maps containing several hierarchy levels. If you mouse over the node line where it connects to the node, an ellipse appears that allows you to move and realign the node freely on the desktop.

If so desired, you can move a selected node up or down in a hierarchy, or you can drag it directly to another node in the target hierarchy. The target node then shows one of the four sides with gray shading. Just drop the node you want to move to place it.

You can draw additional lines to connect the individual nodes. First, Ctrl+click to select the two nodes and press Ctrl+L. The program draws a line between the two. If you then right-click anywhere on this line, you can adjust its appearance in the Connector dialog.

By default, Freeplane displays the existing nodes without frames. Only the root node and free-floating nodes have a border. To tell the software to draw borders around nodes within the hierarchies, you need to select the Format | Node core | Bubble option.

To make the mind map's graphical representation more sophisticated, the program has an integrated toolbox. You can access this toolbox by right-clicking on the user interface and then selecting the Tool panel option in the context menu.

To customize the lines running between the individual nodes, a separate dialog group is available in the Format | Edge properties menu. You can change individual lines between selected nodes or in complete hierarchies. In addition to thickness and shape, you can change line color.

Using the Format | Map background menu option, you can insert a background image that extends over the entire work area or, alternatively, over the visible area. Freeplane supports images in BMP and SVG formats.

Unfortunately, Freeplane is unable to draw a frame around multiple nodes and then process them as a single node. Thanks to the node cloud around a hierarchy of unconnected nodes, a visually highlighted node group can be created. But you cannot drag connecting lines onto the cloud. It is only possible to establish individual connections between nodes inside and outside the cloud using the selected nodes' context menus.

Freeplane is therefore not totally suitable for visualizing combined, unconnected node groups within a larger mind map.

Freeplane offers numerous export filters for processing mind maps. The filters include the HTML, XML, XHTML, and MediaWiki formats. Freeplane also supports various Microsoft formats, as well as ODT. When exporting to graphic formats, the software supports PDF, JPG, SVG, and PNG and saves the complete mind map without display errors. The results can therefore easily be post-processed in other applications.

Freeplane does not exhibit any weaknesses when printing. However, it is recommended that you first define the printable areas in the File | Page setup dialog. Freeplane typically creates the mind map in landscape format, and you will want to print it out in the same manner.


View Your Mind (VYM) [8] is a Qt-based program that is perfectly integrated into the KDE desktop environment. The software, which is licensed under the GPLv2, is available from the repositories of almost all recent Linux distributions. VYM, which is being developed at a rapid pace, offers a conventional user interface, but the tree view displayed on the program window's left is somewhat unusual. With the help of the tree view, you can quickly home in on individual segments in extensive mind maps.

Like Freeplane, VYM offers a menubar and a generously dimensioned buttonbar, but they do not offer the same functionality, such as options for modifying the font type and size and arranging the text in the nodes. If necessary, you can customize the buttonbar functionality in the View | Toolbars menu.

You can immediately edit the default root node. Right-clicking and selecting the option Add | Add branch creates a new hierarchy level with a node. VYM then selects the original node again so that further peer nodes can be created. To create a peer node, just press the A key. VYM automatically links newly generated nodes to the parent node with connecting lines, designing them to be as symmetrical as possible to help the user keep track of nodes, even in the case of extensive hierarchy levels.

You can label the nodes by entering text in the individual nodes, which VYM inserts without line breaks. This can lead to confusing layers, especially if you have long node labels. To format the text, press E, which opens an editor in the lower part of the window. You can use the editor to enter line spacing to display individual nodes in multiple lines.

Besides plain text, icons from the toolbar can be used to draw attention to a node. When you click on an icon in the toolbar, VYM then adds the it to the active node.

To change fonts and font sizes, click on the Richtext button in the editor window. However, the VYM text editor shows some weaknesses. For example, moving text in the editor window may not affect how the node displays. Also, text centering does not work as expected if you then change the font.

VYM offers only rudimentary functions for retroactively drawing lines. You can draw a line – referred to as an xLink by the program – between two nodes that are not directly connected to each other. To do this, select the starting node, press L, and draw the line from the start node to the end node while holding down the left mouse button. The dialog defines whether the line is dashed or continuous and at which ends arrowheads appear.

However, because the lines terminate at the same endpoint of a node, this makes the overall presentation very confusing as soon as several lines from the same hierarchy lead to a single node. The recommendation is to draw xLinks from superordinate hierarchies to the target point to reduce the number of lines.

You cannot drag external frames around multiple floating nodes. To create a free-floating node with several entries in VYM, you need to right-click in a free area of the desktop and choose the Add Mapcenter option. In the editor window, enter and format the text, which visually simulates several nodes in a frame. You can position the results freely in the mind map.

To draw frames around individual connected tree hierarchies, select the first hierarchy and then the Property window option from the context menu, which opens the Property Editor dialog. There, you can draw various borders using the Frame tab and Include children, if desired (Figure 4).

Figure 4: VYM is a solid all-rounder for conventional mind maps.

VYM, like all popular mind mappers, uses its own format, but exports mind maps to other formats without any problems. The software supports PDF, PNG, and SVG. Additionally, you can export to several text formats, but the formatting is then lost. Many export formats are still considered experimental and should not be used in a production environment.

Mind maps printed without any problems. VYM has a simple print dialog that does not offer a page preview.

Buy this article as PDF

Express-Checkout as PDF
Price $2.95
(incl. VAT)

Buy Linux Magazine

Get it on Google Play

US / Canada

Get it on Google Play

UK / Australia

Related content

  • XMind Mind Mapper

    Mind mapping programs let you visualize projects and plans on your PC. If you want to work more efficiently, you'll want to keep the free XMind for Linux in mind.

  • KTools: Treeline

    Mindmaps are useful for organizing ideas and data. Treeline is a promising mindmap tool for KDE.

  • Drawing Trees

    Mind maps help you organize your thoughts and ideas in a clear-cut tree structure. Heimer can help you draw those trees.

  • Workspace: FreeMind

    Learn how to master the advanced features of the FreeMind mind-mapping application to get the most out of this useful tool.

  • Workspace: Taking Notes

    Although there are quite a few note-taking applications to choose from, we'll show you why NoteCase and NoteFinder should be at the top of your list.

comments powered by Disqus
Subscribe to our Linux Newsletters
Find Linux and Open Source Jobs
Subscribe to our ADMIN Newsletters

Support Our Work

Linux Magazine content is made possible with support from readers like you. Please consider contributing when you’ve found an article to be beneficial.

Learn More