I would like to draw a tree where the position of edge endpoints relative to the node depends on contents of the node, and may change between the parent edge and the child edges, to point out a relationship between the two labels. Here is an example of what I want to draw:
Note that the child edges of the middle node are positioned differently from that of its own child edges. (Fortunately, I can assume that all of a node's child edges should be positioned at the same position: it is the case in this example, but it would not be the case if, e.g., the middle node "S(b, c)" had a child "V(b, f)".
Is there a clean way to draw this kind of tree?
Edit: My current approach is to use tikz-qtree:
\documentclass[tikz,border=5pt]{standalone}
\usepackage{tikz-qtree}
\begin{document}
\begin{tikzpicture}
\Tree
[.{$R(a, b)$}
[.{$S(b, c)$}
[.{$T(c, d)$} ]
[.{$U(e, c)$} ]
]
];
\end{tikzpicture}
\end{document}
With the expected result:
The problem is that the tree edges do not represent clearly the common elements from one node label to the other. Sadly I do not have much experience with Tikz or qtree so I don't have a specific idea of how to improve this...
tikz-qtree
solution or could another solution be used?