enter image description here

I have drawn this picture in tikz. Is there a more visually pleasing and intuitively appealing way of displaying this information? I feel what I have drawn is dull and boring. I have to include more text also in this image. In the following, I give the tex code which accomplished this (modified one of the tikz examples).


[node distance = 1cm, auto,font=\footnotesize,
every node/.style={node distance=3cm},
% The comment style is used to describe the characteristics of each force
comment/.style={rectangle, inner sep= 3pt, text width=3cm, node distance=0.25cm, font=\scriptsize\sffamily},
% The force style is used to draw the forces' name
force/.style={rectangle, draw, fill=black!10, inner sep=2pt, text width=2.5cm, text badly centered, minimum height=.7cm, font=\bfseries\footnotesize\sffamily}] 

\node [force] (HQCQP) {Problem to solve};
\path (HQCQP.north)+(2cm,1cm)  node [force] (JNRBased) {Proposed Method};
\path (HQCQP.south)+(2cm,-1cm)  node [force] (SDR) {Existing Method};
\path (JNRBased)+(4cm,1cm) node[force](LMI){First Variation};
\path (JNRBased)+(4cm,-1cm) node[force](RelaxedJNR){Second Variation};
\path (HQCQP.west)+(12cm,0cm) node[force](solution){Solution};

\node [force, text width=2.5cm, dashed, above=.05cm of solution] (upbnd) {Upper Bound};
\node [force, text width=2.5cm, dashed, below=.05cm of solution] (lowbnd) {Lower Bound};

\draw [ -latex] (HQCQP.north) |- (JNRBased.west);
\draw [ -latex] (HQCQP.south) |- (SDR.west);
\draw [ -latex] (SDR.east)    -|- (lowbnd.west);
\draw [ -latex] (RelaxedJNR.east)    -|- (lowbnd.west);
\draw [ -latex] (LMI.east) -| (upbnd.north);
\draw [ -latex] (JNRBased.east) -|- (LMI.west);
\draw [ -latex] (JNRBased.east) -|- (RelaxedJNR.west);

\path (LMI.north)+(3.5cm,.2cm) node [comment] (comment-LMI) {Gives exact solution \\ in cases 1 and 2 and upperbound for other cases.};
  • Hi! I would just make the arrows a bit thicker. And then, if it fits in your page width, it looks fine :) However, it is not necessary to position the elements absolutely, TikZ has a great power in doing this itself. I recommend seeing Diagrams@TeXample, for instance Simple flow chart. – yo' Oct 29 '13 at 8:01
  • 1
    I would layout the box positions so that the lower arrow from Existing method to Lower Bound becomes a straight line -- unless the additional text fills the lower right corner. – ojdo Oct 29 '13 at 8:28
  • 2
    First comment: what you have drawn is, to me, a very clear explanation. I would be very careful about spicing it up, lest you end up sacrificing the clarity. – Charles Staats Oct 29 '13 at 12:50
  • 1
    Second comment: For a touch more "style", you might try using rounded corners, both for the arrows and for the boxes. – Charles Staats Oct 29 '13 at 12:51
  • @CharlesStaats How do I do round corners for arrows and boxes. Is there a way to make it a bit more informal? This looks like a system diagram in engineering, i feel. – dineshdileep Oct 31 '13 at 4:45