我想说明一下,在面对多元分析时,数据点中心性的概念在高维度上很难推广。
为此,我首先解释并说明处理单变量数据时数据点的自然排序。因此,我尝试使用 tikz 在 LaTeX 中绘制以下图片:
到目前为止,我所做的是使用 R 脚本生成.dat文件包含从正态分布中抽样的随机点的坐标,然后尝试在以下代码中绘制它们:
\documentclass{standalone}
\usepackage{tikz}
\begin{document}
\begin{tikzpicture}[only marks]
\draw plot[mark=*] file {random_numbers.dat};
\end{tikzpicture}
\end{document}
编译我的文档时,出现以下错误:缺失数字,视为零。
如对下列任何一个问题作出答复,我们将非常感激!
- 我该如何修复这个错误?
- 我怎样才能根据想要重现的图片为数据点着色并绘制线条?
- 有没有办法不使用.dat文件用于此任务?通过阅读 tikz 和 pgf 包的文档,似乎可以评估和绘制数学表达式,但我不确定是否有工具可以从特定分布中抽取观测值。
编辑:
这.dat文件存储随机数如下:
“X” | “是” |
---|---|
1.52516422413456 | 0 |
-1.84552933493078 | 0 |
0.599154946213978 | 0 |
... | ... |
其中两列之间由空格分隔。
评论:
使用此解决方案,当我在序言中添加以下命令时,又引发了另一个错误:
\usepackage[french]{babel}
我在加载法语 babel 包后添加了这个来修复它:
\usepackage{tikz}
\tikzset{
every picture/.prefix style={
execute at begin picture=\shorthandoff{?}
}
}
答案1
\begin{filecontents}{tmp_random_numbers.dat}
-1.53 0
-0.95 0
1.04 0
1.58 0
-0.97 0
-0.86 0
0.58 0
0.85 0
0.49 0
-1.37 0
-0.73 0
1.84 0
-0.03 0
-1.04 0
-1.79 0
-0.48 0
-1.37 0
1.17 0
-0.12 0
-1.56 0
\end{filecontents}
\documentclass[tikz, border=1cm]{standalone}
\usepackage{pgfplots}
\pgfplotsset{compat=1.18}
\begin{document}
\begin{tikzpicture}
\begin{axis}[
axis lines=center,
axis y line=none,
ticks=none,
xmin=-2, xmax=2,
ymin=0, ymax=0,
filter discard warning=false,
]
\addplot[red, only marks, x filter/.expression={x<-1.5||x>1.5?x:nan}] table {tmp_random_numbers.dat};
\addplot[blue, only marks, x filter/.expression={x>-1.5&&x<1.5?x:nan}] table {tmp_random_numbers.dat};
\addplot[green, only marks] coordinates {(0,0)};
\node[pin={[pin distance=0.5cm, pin edge={black}]{centre}}] at (0,0) {};
\node (outliers) at (0,-1.5cm) {outliers};
\draw (-1.9,-2pt) -- (outliers) (1.9,-2pt) -- (outliers);
\end{axis}
\end{tikzpicture}
\end{document}