如何放置具有特定轴的坐标

如何放置具有特定轴的坐标

我想要绘制这个图像:在此处输入图片描述

但有很多事情我不知道该怎么做:

  1. 我已经创建了自己的轴,但是现在如何定义坐标?
  2. 我如何创建白色和灰色的矩形?

这是我的 MWE(仅定义了轴):

\begin{tikzpicture}
        \begin{axis}[
        %  width=\textwidth,
        % height=\axisdefaultheight,
        title={Débits moyen par taille de fichiers},
        xlabel={Taille des fichiers en [$Mb$]},
        ylabel={Débits en [$Mb/s$]},
        xmin=0, xmax=1010,
        ymin=0, ymax=30,
        xtick=data,
        xticklabels={<1 Mbps, 1Mbps, 10 Mbps, 100 Mbps,>1Gbs},
        ytick=data,
        yticklabels={1000 ms, 100 ms, 10 ms, 1ms},
        % legend pos=north west,
        legend style={at={(1.6,.6)},anchor=north}, % legend pos=outer north east,
        ymajorgrids=true,
        grid style=dashed,
        ]
        \addplot[
        color=darkblue2,
        mark=circle,
        ]
        coordinates {(0,0)};
        \legend{Fixex}

        \addplot[
        color=darkblue,
        mark=circle,
        ]
        coordinates {(1,1)};
        \legend{Nomadic}
        \end{axis}
    \end{tikzpicture}

我知道这真的是从头开始的。谢谢

答案1

这个问题有一个有趣的方面,即

如何才能恢复对数轴的方向。

我在这里没有找到答案,当然我可能错过了。无论如何,一个可能的答案是使用

y coord trafo/.code={\pgfmathparse{log10(1/#1)}},
y coord inv trafo/.code={\pgfmathparse{10^(-#1)}},

其余部分或多或少都是标准的。您可以使用命令将某些区域填充为灰色\fill,如果您希望其他人使用您的颜色darkblue,则darkblue2需要为他们提供定义。还\legend添加了完整的图例,因此您可以将此命令与逗号分隔的条目列表一起使用,或者\addlegendentry,这需要更多输入工作,但使用起来可能也更直观。

\documentclass[tikz,border=3.14mm]{standalone}
\usepackage{siunitx}
\usepackage{pgfplots}
\pgfplotsset{compat=1.16}
\begin{document}
\begin{tikzpicture}
 \begin{axis}[xmode=log,axis on top,
        y coord trafo/.code={\pgfmathparse{log10(1/#1)}},
        y coord inv trafo/.code={\pgfmathparse{10^(-#1)}},
        title={D\'ebits moyen par taille de fichiers},
        xlabel={Taille des fichiers en [Mb]},
        ylabel={D\'ebits en [Mb/s]},
        xmin=0.5, xmax=5000,
        ymin=5000, ymax=0.5,
        xtick={1,10,100,1000},
        xticklabels={$<\SI{1}{MBps}$,\SI{1}{MBps},\SI{10}{MBps},\SI{100}{MBps},$>\SI{1}{GBps}$},
        ytick={1000,100,10,1},
        yticklabels={\si{1000\milli\second},\si{100\milli\second},\si{10\milli\second},\si{1\milli\second}},
        legend style={at={(1.6,.6)},anchor=north,row sep=10pt}, % legend pos=outer north east,
        ]
   \fill[gray!10] (0.5,0.5) -| (5000,5000) -| (500,5) -| cycle;     
   \addplot[only marks,mark=*,mark size=0.75em,
        color=blue!60!black]
        coordinates {(10,100) (100,10)};
   \addlegendentry{Fixex}

   \addplot[only marks,mark=*,mark size=0.75em,
        color=blue!80!black]
        coordinates {(20,30) (200,200)};
   \addlegendentry{Nomadic}
  \end{axis}
 \end{tikzpicture}
\end{document}

在此处输入图片描述

相关内容