非常抱歉,关于垂直上传或比例尺的捕捉,请您考虑将图片视为水平,我需要绘制这个,我可以从这里学到以下内容:但我需要在当前情况下重新绘制它:将不胜感激您的帮助。在 1 和 k 之间,点点就可以了,而不是我为 P 或 t 绘制的小线段。
\documentclass[tikz,border=3.14mm]{standalone}
\begin{document}
\begin{tikzpicture}
\pgfmathtruncatemacro{\L}{10} %<- length of the line
\pgfmathtruncatemacro{\kmax}{6}
\pgfmathtruncatemacro{\tmax}{7}
\draw (0,0) -- (\L,0);
\foreach \k in {0,...,\kmax}
{\draw (\L*\k/\kmax,0.2) -- (\L*\k/\kmax,-0.2) \ifnum\k<2 node[below,text
height=1.5ex]{$\k$}\fi
\ifnum\k=\numexpr\kmax-1 node[below,text
height=1.5ex]{$k$}\fi
\ifnum\k=\kmax node[below,text
height=1.5ex]{$k+1$}\fi;
\ifnum\k<\kmax
\foreach \t in {1,2,...,\tmax}
{\draw ({\L*\k/\kmax+\L*(\t/(\tmax+1))/\kmax},-0.1)
-- ({\L*\k/\kmax+\L*(\t/(\tmax+1))/\kmax},0.1)
node[above] {$\ifnum\t=\tmax
t\else\ifnum\t<4
\t\else .\fi\fi$} ;}
\fi}
\end{tikzpicture}
\end{document}
我今天还学到了这些:
\begin{tikzpicture}[xscale=8]
\draw[-][draw=red, very thick] (0,0) -- (.5,0);
\draw[-][draw=green, very thick] (.5,0) -- (1,0);
\draw [thick] (0,-.1) node[below]{0} -- (0,0.1);
\draw [thick] (0.5,-.1) node[below]{$a=b=1/2$} -- (0.5,0.1);
\draw [thick] (1,-.1) node[below]{1} -- (1,0.1);
\end{tikzpicture}
\draw[-][draw=red, very thick] (0,0) -- (.5,0);
\draw[-][draw=green, very thick] (.5,0) -- (1,0);
\draw [thick] (0,-.1) node[below]{0} -- (0,0.1);
0
\draw [thick] (0.5,-.1) node[below]{$a=b=1/2$} -- (0.5,0.1);
0 a = b = 1/2
\draw [thick] (1,-.1) node[below]{1} -- (1,0.1);
答案1
您不需要如此复杂的代码。
\documentclass[tikz]{standalone}
\begin{document}
\begin{tikzpicture}[x=0.8cm]
\draw[-latex] (0,0) -- (21,0);
\foreach \i [count=\j] in {0,5,10}
\draw (\i,0) -- (\i,-.2) node[below,align=center] {\j\\$P_{\j}$};
\draw (12,0) -- (12,-.2) node[below,align=center] {$k$\\$P_k$};
\draw (17,0) -- (17,-.2) node[below,align=center] {$k+1$\\$P_{k+1}$};
\foreach \i [count=\j from 0] in {1,6} {
\draw (\i,0) -- (\i,.2) node[above,align=center] {$a_{\j}$\\1};
\draw (\i+1,0) -- (\i+1,.2) node[above,align=center] {$a_{\j}$\\2};
\path (\i+2,.2) node[above] {$\ldots$};
\draw (\i+3,0) -- (\i+3,.2) node[above,align=center] {$a_{\j}$\\$t$};
}
\draw (13,0) -- (13,.2) node[above,align=center] {$a_{k}$\\1};
\draw (14,0) -- (14,.2) node[above,align=center] {$a_{k}$\\2};
\path (15,.2) node[above] {$\ldots$};
\draw (16,0) -- (16,.2) node[above,align=center] {$a_{k}$\\$t$};
\draw (18,0) -- (18,.2) node[above,align=center] {$a_{k+1}$\\1};
\draw (19,0) -- (19,.2) node[above,align=center] {$a_{k+1}$\\2};
\path (20,.2) node[above] {$\ldots$};
\path (11,-.2) node[below] {$\ldots$};
\path (11,.2) node[above] {$\ldots$};
\end{tikzpicture}
\end{document}
(在新标签页中打开图片以获得更好的分辨率)
答案2
像这样的事情??
\documentclass[tikz,border=3.14mm]{standalone}
\usepackage{stackengine}
\renewcommand\stacktype{L}
\stackMath
\begin{document}
\begin{tikzpicture}
\pgfmathtruncatemacro{\L}{20} %<- length of the line
\pgfmathtruncatemacro{\kmax}{6}
\pgfmathtruncatemacro{\tmax}{7}
\draw (0,0) -- (\L,0);
\foreach \k in {0,...,\kmax}
{\draw (\L*\k/\kmax,0.2) -- (\L*\k/\kmax,-0.2) \ifnum\k<2 node[below,text
height=1.5ex]{$\k$}\fi
\ifnum\k=\numexpr\kmax-1 node[below,text
height=1.5ex]{$k$}\fi
\ifnum\k=\kmax node[below,text
height=1.5ex]{$k+1$}\fi;
\ifnum\k<\kmax
\foreach \t in {1,2,...,\tmax}
{\draw ({\L*\k/\kmax+\L*(\t/(\tmax+1))/\kmax},-0.1)
-- ({\L*\k/\kmax+\L*(\t/(\tmax+1))/\kmax},0.1)
node[above] {$\ifnum\t=\tmax
\ifnum\k=5\relax\def\q{k}\else\def\q{\k}\fi
\stackon{t}{a_\q^t}\else\ifnum\t<4
\ifnum\k=5\relax\def\q{k}\else\def\q{\k}\fi
\stackon{\t}{a_\q^\t}\else .\fi\fi$} ;}
\fi}
\end{tikzpicture}
\end{document}
放大钾: