我不知道如何仅使用 3 行坐标绘制多边形或三角形。我有几个问题:
- 我无法使针脚角看起来很清晰(线越细就越不明显)
- 我必须复制第一行坐标才能形成完整的形状
- 为了解决第一个问题,我还必须复制第二行
- 使用时会出现文件名无效的错误,因此如果我想使用,
\addplot table {};
\resizebox{10cm}{!}{}
则无法调整大小tikzpicture
\addplot table {};
因此,为了制作出像三角形这样的简单形状,我必须提供5 个坐标,其中 2 个我必须手动复制。为了对多个形状执行此操作,我必须为每个形状(在每个文件中)执行所有这些繁琐的工作。
\documentclass{article}
\usepackage{pgfplots}
\begin{document}
% \resizebox{10cm}{!}{ % Gives error if uncommented
\begin{tikzpicture}
\begin{axis}
\addplot[line width=2pt] table {
1 1
5 1
5 5
1 1 % 1st line
5 1 % 2nd line
};
\end{axis}
\end{tikzpicture}
% }
\end{document}
如何从表格/文件绘制完美拼接的形状(多边形)而不重复坐标?为什么调整大小命令会失败?
PS 在文档中,我找不到任何关于从表格创建多边形的内容,只有锯齿线等。我使用lualatex
。
答案1
-- cycle
在末尾附加\addplot
以关闭路径,那么您只需要三个顶点,就可以得到一个合适的角。
就缩放而言,为什么不使用pgfplots
'功能,即width
(和/或height
)键来执行此操作?
\documentclass{article}
\usepackage{pgfplots}
\pgfplotsset{compat=1.18}
\begin{document}
\begin{tikzpicture}
\begin{axis}[width=10cm]
\addplot[line width=2pt] table {
1 1
5 1
5 5
} -- cycle;
\end{axis}
\end{tikzpicture}
\end{document}
答案2
只是为了好玩:
\documentclass{article}
\usepackage{pgfplots}
\begin{document}
\begin{tikzpicture}
\begin{axis}[width=10cm]
\addplot[opacity=0] table {
x y
1 1
5 1
5 5
};
\coordinate (A) at (axis cs: 1,1);
\coordinate (B) at (axis cs: 5,1);
\coordinate (C) at (axis cs: 5,5);
\end{axis}
\draw[line width=2pt] (A)--(B)--(C)--cycle;
\end{tikzpicture}
\end{document}