使用 tikz \draw plot 绘制平行线

使用 tikz \draw plot 绘制平行线

我正在尝试画一条线 (PC2),它经过某个任意点 (A) 并且与另一条线 (PC1) 平行。

PC1 由梯度 (PCslp) 和 y 截距 (PCint) 定义。显然,作为平行线,PC1 和 PC2 具有相同的梯度。y 截距不同,可以使用点 (A) 和梯度计算:取 (A) 的 y 值并减去 (A) 的 x 值乘以梯度 (PCslp)。

我使用的代码如下:

\documentclass[tikz, border=2mm]{standalone}
\usepackage{tikz}
\usepackage{calc}

\usetikzlibrary{calc,intersections}

\begin{document}

\begin{tikzpicture}[
        PC/.style={red, thick},
        dot/.style={circle,fill=black,minimum size=4pt,inner sep=0pt,outer sep=-1pt}
      ]

% Define linear parameters 
\def\PCint{0.2}   %Y-intercept 
\def\PCslp{0.8}   %Slope 
\def\PC{\x,{\PCslp*\x+\PCint}}

\draw[PC, domain=0:5] 
  plot (\PC)
  node [right] {$PC_1$};

\draw [domain=0:5]
  let
    \p1=(61.28041pt, 26.23682pt),
    \n1={\y1-\PCslp*\x1} in

  % points the plot should pass through...
  node [dot,label=above:{$A$}] at (\x1,\y1) {}
  node [dot,label=above:{$B$}] at (0,\n1) {}

  % first try for a plot...
  plot ({\x,\PCslp*\x-\n1})
  node [right] {$PC_2$};

\end{tikzpicture}
\end{document}

不幸的是,我得到的结果并不像我预期的那样:

在此处输入图片描述

有人能指出我做错什么吗?

干杯

尼克

答案1

虽然有点混乱,但是确实有效:

\documentclass[tikz, border=2mm]{standalone}
\usepackage{tikz}
\usepackage{calc}

\usetikzlibrary{calc,intersections}

\begin{document}

\begin{tikzpicture}[
        PC/.style={red, thick},
        dot/.style={circle,fill=black,minimum size=4pt,inner sep=0pt,outer sep=-1pt}
      ]

% Define linear parameters 
\def\PCint{0.2}   %Y-intercept 
\def\PCslp{0.8}   %Slope 
\def\PC{\x,{\PCslp*\x+\PCint}}

\draw[PC, domain=0:5] 
  plot (\PC)
  node [right] {$PC_1$};

\draw [domain=0:5]
  let
    \p1=(61.28041pt, 26.23682pt),
    \n1={\y1-\PCslp*\x1} in

  % points the plot should pass through...
  node [dot,label=above:{$A$}] at (\x1,\y1) {}
  node [dot,label=above:{$B$}] at (0,\n1) {}

  % first try for a plot...
  plot[yshift=\n1] (\x,\PCslp*\x)
  node [right,yshift=\n1] {$PC_2$};

\end{tikzpicture}
\end{document}

演示

相关内容