如何在 tikz 中绘制没有数据的图表?

如何在 tikz 中绘制没有数据的图表?

我想画出这个图。我知道该如何用数据来画。但是这里我没有任何数据。我想画出这个图。我该怎么做?

在此处输入图片描述

答案1

正如其他人所说,如果您没有数据值,则需要使用函数生成它们。最简单的方法是使用 PGFPlots 并简单地绘制函数 f(x),其中 x 在某个范围内以规则间隔采样。例如,要绘制 f(x)=x^3,您可以使用以下代码:

\documentclass{article}
\usepackage{pgfplots}
\begin{document}

\begin{tikzpicture}
\begin{axis}
\addplot [only marks, fill=cyan, mark size=1.5] {x^3};
\end{axis}
\end{tikzpicture} 

\end{document}


对于更复杂的函数,尤其是当您的 x 样本不是规则分布时,您可以计算 TeX 之外的数据并将其简单地包含在您的文档中,或者您可以使用 PGFPlotstable 在文档内生成数据表。

下面是一个示例,我根据包含在元数据中的代码创建了一个包含三列的表格:x、中间步骤和 y。维基百科图片你使用了:

\documentclass{article}
\usepackage{pgfplots, pgfplotstable}
\begin{document}

\pgfplotstablenew[
create on use/x/.style={
    create col/expr={rnd}
},
create on use/intermediate/.style={
    create col/expr={ln(\thisrow{x}/(1-\thisrow{x}))}
},
create on use/y/.style={
    create col/expr={
        \thisrow{intermediate}/(abs(\thisrow{intermediate}))*abs(\thisrow{intermediate})^1.4
    }
},
columns={x,intermediate, y}]
{75}
\datatable

\begin{tikzpicture}
\begin{axis}
\addplot [only marks, fill=cyan, mark size=1.5] table [x=x, y=y] {\datatable};
\end{axis}
\end{tikzpicture} 

\end{document}

相关内容