How can I plot this figure in a LaTEX document?DMT_curve Note:m and n in the curve are positive integers; for example m=4, n=10. Note:r is a positive integer between 0 and min(m,n).

  • what are the coordinates for the points? At least minimize the work that is needed for the answerers – percusse Oct 1 '15 at 10:30

Since diagram has small number of points, it is sensible to join their coordinates with theirs labels:


    \coordinate (c0) at (0,6);
    \coordinate[pin=above right:${(0,mn)}$]           (c1) at (0,5);
    \coordinate[pin=above right:${(1,(m-1)(n-1))}$]   (c2) at (1,3);
    \coordinate[pin=above right:${(2,(m-2)(n-2))}$]   (c3) at (2,1.5);
    \coordinate[pin=above right:${(r,(m-r)(n-r))}$]   (c4) at (3,1);
    \coordinate                                       (c5) at (4,0.5);
    \coordinate[pin=above right:${(\min\{mn\},0)}$]   (c6) at (5,0);
    \coordinate (c7) at (8,0);
\draw[thick, red]
    (c1) circle (0.8mm) -- (c2) circle (0.8mm) -- (c3) circle (0.8mm)
    (c5) circle (0.8mm) -- (c6) circle (0.8mm);
\draw[thick,densely dashed, red]
    (c3) circle (0.8mm) -- (c4) circle (0.8mm) -- (c5) circle (0.8mm);
\node[draw, inner sep=0mm, fit=(c0) (c7),
      label=below:spatial multiplexing gain \dots,
      label=left:\rotatebox{90}{densety gain}] {};

Result: enter image description here


Here's something to get you started.

Result of code below

\begin{tikzpicture}[xscale=2, yscale=0.2, point/.style={fill, circle, minimum size=4pt, inner sep=0pt}]

\pgfmathsetmacro\min{min(\m, \n)}

\draw[help lines] (0, 0) grid[ystep=10] (\min, \m*\n);

\def\addnode{node[point, label={above right:$(\i, (\m-\i)(\n-\i))$}] {}}

\draw (0, \m*\n) \addnode
    foreach \i in {1, ..., \min}{
        -- (\i, { (\m-\i)*(\n-\i)} ) \addnode 

\draw[->, thick] (-0.1, 0) -- (0, 0) -- node[below]         {Spatial multiplexing gain: $r = R/\log(\text{SNR})$}(\min, 0) -- +(0.2, 0);
\draw[->, thick] (0, -1)   -- (0, 0) -- node[above, sloped] {Diversity gain: $d^*(r)$}(0, \m*\n) -- +(0, 2);


Here is a pstricks solution:

\documentclass[11pt, a4paper, pdf, x11names, border=3pt]{standalone}
\usepackage{ pst-plot, pst-node}


    \psset{unit=2, arrowinset=0.15, ticksize=2.5pt -2.5pt, labelFontSize=\footnotesize, tickwidth =0.6pt, algebraic, radius=4pt}
    \psaxes[axesstyle=frame, linecolor=LightSteelBlue3, ticks=none, labels=none](0,0)(7, 6.2)
    \uput[d](3,0){Spatial Multiplexing Gain: $\mathsf{r = R/\log SNR}$}
    \uput[l]{90}(0,3){Diversity Gain: $\mathsf{d^*(r)}$}
    \psset{yunit=0.2cm, linewidth=1.2pt, labelsep=0.5em}
    \multido{\Ix=0+1, \Im=5+-1, \In=10 +-1}{6}{%
        \numdef{\Iy}{\Im*\In}\Cnode[linecolor=SteelBlue4](\Ix, \Iy){A\Ix}}
    \psset{nodesepA=12pt, nodesepB=6pt, linewidth=0.6pt, arrows=->}
    \ncline{L4}{A5}\rput(L4){$(\min(m, n),0)$}


enter image description here

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.