绘制曲线

绘制曲线

我怎样才能在 LaTEX 文档中绘制这个图形?DMT_曲线 注:曲线中m、n为正整数,如m=4,n=10。注:r为0~min(m,n)之间的正整数。

答案1

由于图中的点数量较少,因此将它们的坐标与标签连接起来是合理的:

\documentclass[border=3mm,
               tikz,
               preview]{standalone}
\usetikzlibrary{fit}
    \usepackage{rotating}

    \begin{document}
%---------------------------------------------------------------%
\begin{tikzpicture}
    \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}] {};
\end{tikzpicture}
%---------------------------------------------------------------%
    \end{document}

结果: 在此处输入图片描述

答案2

这里有一些可以帮助您入门的东西。

以下代码的结果

\documentclass{minimal}
\usepackage{tikz}
\usepackage{amsmath}
\begin{document}
\begin{center}
\begin{tikzpicture}[xscale=2, yscale=0.2, point/.style={fill, circle, minimum size=4pt, inner sep=0pt}]

\def\m{4}
\def\n{10}
\def\i{0}
\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);

\end{tikzpicture}
\end{center}
\end{document}

答案3

这是一个 pstricks解决方案:

\documentclass[11pt, a4paper, pdf, x11names, border=3pt]{standalone}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage{sfmath}
\usepackage{ pst-plot, pst-node}
\usepackage{etoolbox}
\usepackage{auto-pst-pdf}

\begin{document}


\small\sffamily
\begin{pspicture}(-1,-1)(6,6)
    \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{linecolor=LightSteelBlue3}
    \ncline{A0}{A1}\ncline{A1}{A2}\ncline{A4}{A5}
    {\psset{linestyle=dashed}
        \ncline{A2}{A3}\ncline{A3}{A4}}
    \psset{nodesepA=12pt, nodesepB=6pt, linewidth=0.6pt, arrows=->}
    \pnodes{L}(1.4,60)(2.2,46)(3.0,34)(3.8,24)(5.6,10)
    \ncline{L0}{A0}\rput(L0){$(0,mn)$}
    \ncline{L1}{A1}\rput(L1){$(1,(m-1)(n-1))$}
    \ncline{L2}{A2}\rput(L2){$(2,(m-2)(n-2))$}
    \ncline{L3}{A3}\rput(L3){$(r,(m-r)(n-r))$}
    \ncline{L4}{A5}\rput(L4){$(\min(m, n),0)$}
\end{pspicture}

\end{document} 

在此处输入图片描述

相关内容