I have the following diagram:
\documentclass{article}
\usepackage{tikz}
\begin{document}
\usetikzlibrary{shapes,arrows,positioning,calc}
\tikzset {
block/.style = {draw, fill=blue!20, rounded corners,text centered, rectangle, minimum height=3em, minimum width = 9em, font=\bfseries},
}
\begin{tikzpicture}[node distance=3cm, >=latex']
\node [block] (convergencia) {convergence};
\node [below right=2em] (analitica) {analitical solution};
\node [below left=2em] (numerica) {numerical solution};
\draw [<->] (analitica) -- (numerica);
\node [block,above left of=convergencia] (consistencia) {consistency};
\draw [thick,->] (consistencia) -- (convergencia);
\node[above left of=consistencia] (discreta) {Discrete equation};
\node[above right of=consistencia] (diferencial) {differential equation};
\draw [<->] (discreta) -- (diferencial);
\node [block, above right of=convergencia] (estabilidade) {stability};
\draw [thick,->] (estabilidade) -- (convergencia);
\node[above left of=estabilidade] (exata) {exact numerical solution};
\node[above right of=estabilidade] (numerica) {found numerical solution};
\draw [<->] (exata) -- (numerica);
\end{tikzpicture}
\end{document}
But it has two issues that I can't solve:
First, I can't make positional references as above right of=object and above left of=object and have a good distance between the object below and the two objects created above. By good I mean, a small vertical distance and a horizontal distance that to not clutter everything.
Second, my two boxes Consistencia and Estabilidade are nicely positioned, but the objects above them get over each other, how can I enforce a bigger horizontal distance (but not vertical) between them to make the objects above do not overwrite each other?



positioninglibrary, but you are not using it. By using it, e.g.above left=1.5cm of estabilidadeinstead ofabove left of=estabilidadeyou should be able to place everything where you want. – Jun 02 '18 at 04:06(elem) -- (elem)andleft oflike statements is thepoistioninglibrary; 3. your hint is good, It has worked for the blocks, but the [attribs] now are too spread horizontaly since they are starting after the margins of the [blocks]. I wish something in between. Thanks. – Lin Jun 02 '18 at 04:20\documentclasscommand, include any necessary packages and be as small as possible to demonstrate your problem. – Jun 02 '18 at 04:42