如何使用 TikZ 在选定线段中绘制抛物线

如何使用 TikZ 在选定线段中绘制抛物线

我想绘制这个:抛物线下方的面积

我知道,我可以使用 TikZ 找到交点(试过\shade但不知道如何仅在一段中绘制抛物线),但我不知道如何绘制这个 R 图、S+T 和 U+V。我该如何绘制这个图?新细节:[域] 如何工作?

\tipc{[x=1cm,y=1cm]

  \def\xmin{0}
  \def\xmax{10}
  \def\ymin{0}
  \def\ymax{10}
  \draw[style=help lines, ystep=1, xstep=1] (\xmin,\ymin) grid
  (\xmax,\ymax);

  % axes
  \draw (-.25,-.25) node[auto] {0};
  \draw[->] (\xmin,\ymin) -- (\xmax,\ymin) node[right] {$Q$};
  \draw[->] (\xmin,\ymin) -- (\xmin,\ymax) node[above] {$P$};
  \draw[red] (2,2) parabola (8,8) node[right,black] {$S$};
  \draw[blue] (8,2) parabola (2,8) node[left,black] {$D$};
  \draw[dashed]  (5,0) node[below] {$q_A$} -- (5,3.5);
  \draw[dashed] (3.72,-0.5) -- (3.72,2.5) -- (6.27,2.5) -- (6.27,-0.5);
  \draw[<->] (3.72,-0.5) node [below] {$q_s$}  -- ++(2.55,0) node [midway,below] {$Im$}
  node [below] {$q_d$};
  \begin{scope}
        \draw[color=red!30,domain=1.72:3]
            (5,3.5) parabola  (2,8)  |- (3.72,3.5);
    \end{scope}
}

在此处输入图片描述

答案1

这是我的解决方案。请注意,我没有使用 tikz 的抛物线函数,因为我没有定义域(而不是端点),而是绘制了两个二次函数:

\documentclass{minimal}
\usepackage{tikz}

\begin{document}
    \begin{tikzpicture}

        \def\xmin{0}
        \def\xmax{10}
        \def\ymin{0}
        \def\ymax{10}
        \draw[style=help lines, ystep=1, xstep=1] (\xmin,\ymin) grid
        (\xmax,\ymax);

        \draw (-.25,-.25) node[auto] {0};
        \draw[->] (\xmin,\ymin) -- (\xmax,\ymin) node[right] {$Q$};
        \draw[->] (\xmin,\ymin) -- (\xmin,\ymax) node[above] {$P$};

        \def\intersectX{4.76}
        \def\intersectY{4.26}
        \def\QPX{4}
        \def\QPY{5}
        \draw[color=red] plot [domain=0:8] (\x,{((\x)^2)/10 +2)});
        \draw[color=blue] plot [domain=0:8] (\x,{((\x-14)^2)/20)});

        \fill[fill=pink,opacity=0.7] (0,\QPY) -- plot [domain=0:\QPY] (\x,{((\x-14)^2)/20)}) -- (\QPX,\QPY) -- cycle;
        \fill[fill=cyan,opacity=0.7] (0,\QPY) -- plot [domain=0:\QPX] (\x,{((\x)^2)/10 +2)}) -- (\QPX,\QPY) -- cycle;

        \draw [domain=\QPX:\intersectX] 
               plot(\x,{((\x-14)^2)/20)}) -- (\QPX,\QPY) -- (\QPX,\QPY) -- cycle; 

        \draw [fill=green,opacity=0.7,domain=\QPX:\intersectX] 
               plot(\x,{((\x)^2)/10 +2)}) -- (\QPX,\QPY) -- cycle;

        \draw[dashed]  (\intersectX,0) node[below] {$Q_1$} -- (\intersectX,\intersectY);
        \draw[dashed]  (0,\intersectY) node[below] {$P_1$} -- (\intersectX,\intersectY);
        \draw[dashed]  (0,\intersectY) node[below] {$P_1$} -- (\intersectX,\intersectY);
        \draw[dashed]  (\QPX,0) node[below] {$Q_2$} -- (\QPX,\QPY);
        \draw[dashed]  (0,\QPY) node[below] {$P_2$} -- (\QPX,\QPY);

    \end{tikzpicture}
\end{document}

结果是:

在此处输入图片描述

我利用了一些帮助也回答一下。

相关内容