我想创建一条与垂直线相交于特定点的抛物线。有人能帮我吗?
我的 MWE 是
\usepackage{tikz}
\usetikzlibrary{intersections,shapes,arrows,calc}
\usepackage{esvect}
\usepackage{relsize}
\begin{tikzpicture}
% New graph - bottow left
\draw[<->,rounded corners, thick] (0,2.5) node(yline)[left] {$r$} -- (0,0) -- (3,0) node(yline)[below] { $Y$};
\draw (1.5,0) -- (1.5,2.5);
\node[label=right:$\overline{S}(Y_{A})$] at (1.5,2.5) {};
\node[ circle,fill=black,minimum size=2pt,inner sep=0pt, outer sep=-1pt, label=left:$r^*_{A}$] at (0,1.5) {};
\draw[dashed] (0,1.5) -- (1.5,1.5) ;
\draw (0.8,2.5) parabola[bend at end] (1.5,1.5) ;
\draw (1.5,1.5) parabola[bend at end] (2.5,1.2) ;
\end{tikzpicture}
生成了以下敏捷图片:
我对交点非常严格。在我的例子中,抛物线必须通过 (1.5,1.5) 点
有什么帮助可以使图表看起来更好吗?
答案1
看看,如果你喜欢...
\documentclass[tikz, margin=3mm]{standalone}
\usetikzlibrary{intersections}
\begin{document}
\begin{tikzpicture}
% axes
\draw[thick,->] (-0.1,0) coordinate (O)
-- ++ (4.1,0) node [below left] {$X$};
\draw[thick,->] (0,-0.1) -- ++ (0,4.1) node [below left] {$r$};
\draw[ultra thin, gray] (0,0) grid + (4,4); % only to show that intersection is at (1.5,1.5)
% curve
\begin{scope}[font=\footnotesize]
\draw[red, very thick,name path=A]
plot[domain=0.32:4, samples=64] (\x,0.8333+1/\x);
\draw[name path=B]
(1.5,-0.1) node[below] {1.5}
-- ++ (0,4.1) node[below right] {$\overline{S}(Y_{A})$};
\draw[dashed, name intersections={of =A and B, by={r}}]
(r) -- (r -| O) node[left] {$r^*_{A}$};
\end{scope}
\end{tikzpicture}
\end{document}
附录: 在第一个版本的答案中,我假设主要问题是重新设计图像的 LaTeX 部分,例如定义函数不是问题。看来我错了,所以现在我正在纠正我的错误表现 :) 但只需付出最少的努力。您可以自己找到足够的功能,当然还可以将刻度标签更改为您想要的。添加的网格仅是指示性的,在实际使用 MWE 时必须将其删除(因为我理解您的愿望)。
笔记:推挤曲线不是抛物线,我只是用反函数即双曲线模仿你在问题中所展示的内容。