I would like to draw diagrams with citations. The advantage of using LaTEX is that I don't have to manually input the citations whenever the citations change within the document. This poses a lot of problems when a manual software is used to draw diagrams. A writer may have to wait till the document is finished, manually check the citations and input them into the diagram. I have included a sample diagram but I currently do not have a working example for other details because I do not know where to begin.

enter image description here

1 Answer 1


with forest is simple:

enter image description here


for tree={              % style of nodes in the tree
  draw, semithick, rounded corners,
   text width = 24mm, text badly centered,% <-- "align=center" doesn't work
                        % style of tree (edges, distances, direction)
         edge = {draw, semithick, -stealth},
       anchor = north,
         grow = south,
forked edge,            % for forked edge
        s sep = 8mm,    % sibling distance
        l sep = 8mm,    % level distance
     fork sep = 3.5mm,  % distance from parent to branching point
 [Big Class
  [Class A
    [Proposal A1 \cite{...}\\
     Proposal A2 \cite{...}]
  [Class B
    [Proposal B1 \cite{...}\\
     Proposal B2 \cite{...}]
  [Class C
    [Proposal C1 \cite{...}\\
     Proposal C2 \cite{...}]

edit: similar result you can obtain with tikz using trees tikz library:

\documentclass[tikz, border=3mm]{standalone}

every node/.style = {draw, rounded corners, text width=28mm, align=center,
level distance = 12mm,
sibling distance = 32mm,
edge from parent fork down
 \node {Big Class}
    child{ node {Class A}
        child{ node {Proposal A1 \cite{...}\\
                     Proposal A2 \cite{...}}}
    child{ node {Class B}
        child{ node {Proposal B1 \cite{...}\\
                     Proposal B2 \cite{...}}}
    child{ node {Class C}
        child{ node {Proposal C1 \cite{...}\\
                     Proposal C2 \cite{...}}}
  • Thanks! This looks very nice. I would like to know more about using forest for this purpose! Such as increasing the branches and sub-branches of the tree and adding colour to the nodes if required Commented Jan 21, 2018 at 3:12
  • 1
    for coloring of node just ad to for tree options for example top color = teal!10, bottom color = teal!50,. for more subbranches see how is done in example (quit simple). however, if you will stuck in this effort, don't hesitate to ask for help on this site :-)
    – Zarko
    Commented Jan 21, 2018 at 3:24

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .