答案1
对于第一个答案,Ti钾Z 文档可能是一个很好的起点,特别是教程部分。评论中的链接也提供了很多有趣的资源。这个网站上有很多例子,从非常简单到非常困难。
第二个:图片。你可以用这个简单的代码来实现:
\documentclass[border=2mm,tikz]{standalone}
\begin{document}
\begin{tikzpicture}
\def\R{3} % Table radius
\def\r{0.5} % Seat radius
% Title
\node at (0,\R+1) {\Large Seats in a round table};
% Table
\draw[thick,fill=brown!30] (0,0) circle (\R);
% Seats (change the number 180 to rotate the seats)
\foreach\i in {1,...,12}
\draw[fill=white] (180-30*\i:\R) circle (\r) node {$\i$};
% Center (comment it or remove it if you don't want the center shown)
\fill (0,0) circle (0.5mm);
\end{tikzpicture}
\end{document}
我认为这是不言自明的,但以防万一:
- 我为半径创建了两个变量
\R
和\r
。这样,如果您想更改它们,就不需要在整个代码中寻找它们(在这种情况下不需要太多,但有时可能会更长)。 - 这
\foreach
语句重复下一条指令,对于每个变量的值\i
在 (1,...,12) 范围内。因此,它在极点处绘制 12 个圆,其角度是 的函数\i
:(180-30*\i
如果将值 180 更改为另一个角度,则可以旋转座椅)。照这样,角度将是
180-30*1=150, 180-30*2=120, ... , 180-30*12=-180
答案2
只是为了好玩,整合了 Juan 的代码:
\documentclass[border=2mm,tikz]{standalone}
\begin{document}
\begin{tikzpicture}
\def\R{3} % Table radius
\def\r{0.6} % Seat radius
% Title
\node at (0,\R+1) {\Large Seats in a round table};
% Table
\draw[thick,fill=brown!30] (0,0) circle (\R);
% Seats (change the number 180 to rotate the seats)
\foreach\i in {1,...,12}
\draw[fill=white] (180-30*\i:\R) circle (\r) node {$\i$};
% Center (comment it or remove it if you don't want the center shown)
\fill[green] (0,0) circle (2*\r);
\draw[-latex] (.4,0) arc (0:120:.4);
\fill (0,0) circle (0.5mm);
\foreach\i in {1,...,6}
\draw[fill=cyan] (180-60*\i:.9) circle (.2) node {};
\end{tikzpicture}
\end{document}
结果:
答案3
使用库可以非常轻松地构建此类图表chain
。这是手册部分的示例Nodes on a chain
,稍加修改即可获得与您的结果类似的结果。如果您需要其他修改,请提出要求!
\documentclass[border=5mm]{standalone}
\usepackage{tikz}
\usetikzlibrary {chains}
\begin{document}
\begin{tikzpicture}[start chain=circle placed {at=(\tikzchaincount*30:1.5)}]
\foreach \i in {1,...,12}
\node [on chain,draw,circle,inner sep=0pt,minimum size=15pt] {\i};
\draw (circle-1) -- (circle-10);
\end{tikzpicture}
\end{document}
答案4
如果您想要在桌子周围有更真实的座位,请尝试此代码(注释行用于对称控制):
\documentclass{article}
\usepackage{tikz,graphicx}
\usetikzlibrary{calc}
\begin{document}
\noindent
\begin{tikzpicture}[scale=1]
\foreach \i in {1,...,12}{
\draw[line width=4pt,rotate=30*\i,cyan] (5,-1) arc[radius=1, start angle=-80, end angle=80];
\draw[red] (30*\i:5.3) node {\Large \bf $\i$};
}
\draw[line width=3pt,fill=brown!30] (0,0) circle (5);
\draw[line width=3pt,fill=black] (0,0) circle (.2);
%\draw[dotted] (0,-7)--(0,7);
\end{tikzpicture}
\end{document}
代码生成了这张图片: