
私はtikz
次の画像を再現するために使用しています
私がやろうとしているのは、「拡張された」そして「滑らかな」台形を描くことです。私のコードは次のとおりです。
\documentclass{standalone}
\usepackage{tikz}
\begin{document}
\begin{tikzpicture}
%axes
\draw[very thick] (0,0)--(8,0);
\draw[very thick] (0,0)--(0,5) coordinate (y);
\draw (8,0) node[below] {\eng{Energy}};
\node [draw=none,rotate=90, yshift=0.3cm] at (0,5) {\eng{Counts}};
%1st peak
\draw[thick,blue] (7.3,0)--(7,3)--(5,4)--(4.7,0);
\draw[blue,dashed] (7,0)--(7,3);
\draw[blue,dashed] (5,4)--(5,0);
\draw[blue] (7,3) node[above,right] {$4$};
\draw[blue] (5,4) node[above,left] {$3$};
\draw[blue] (6,4.5) node[above] {$\delta E$};
%2nd peak
\draw[thick,red] (3.3,0) -- (3,2.5) -- (1,3.5) -- (0.7,0);
\draw[red,dashed] (3,0)--(3,2.5);
\draw[red,dashed] (1,0)--(1,3.5);
\draw[red] (3,2.5) node[above,right] {$1$};
\draw[red] (1,3.5) node[above,left] {$2$};
\draw[red] (2,4.5) node[above] {$\delta E$};
\end{tikzpicture}
\end{document}
そして私の出力は
私がやりたいのは、角度 1、2、3、4 をもっと滑らかにすることです。また、x 軸に接する赤と青の線を、小さな尾があるように、もう少し滑らかにしたいです。どうすればこれを実現できますか?
答え1
「X 軸の線に垂直な 2 本の線を延長する」とはどういう意味かよくわかりませんが、少なくともベジェ曲線を使用すると滑らかな線を描くことができます。
直線上に(a) -- (b)
(複数の)制御点xを追加して滑らかな曲線を作成できます。(a) .. controls (x) .. (b)
(出典:ここ)
編集: 質問を編集していただきありがとうございます :) それで、回答を修正させてください...
実際には、プロット用の「スムーズ」修飾子があります。さらに、最後と最初に別の座標を追加し、隣接する座標の y 値を増やしました。
\draw[thick, green] plot [smooth] coordinates {(3.5,0) (3.3,0.5) (3,2.5) (1,3.5) (0.7,0.5) (0.5,0)};
比較のために、Harish Kumar の回答 (両方とも緑色で重ねて表示) も示します。x 軸に沿って平滑化を実現するために 2 つのノードが追加されています。
\draw[thick,green, rounded corners=4mm ] (7.7,0) -- (7.3,0)--(7,3)--(5,4)--(4.7,0) -- (4.3,0);
答え2
以下を使用できますrounded corners
:
\documentclass{standalone}
\usepackage{tikz}
\begin{document}
\begin{tikzpicture}
%axes
\draw[very thick] (0,0)--(8,0);
\draw[very thick] (0,0)--(0,5) coordinate (y);
\draw (8,0) node[below] {Energy};
\node [draw=none,rotate=90, yshift=0.3cm] at (0,5) {Counts};
%1st peak
\draw[thick,blue,rounded corners=4mm] (7.3,0)--(7,3)--(5,4)--(4.7,0);
\draw[blue,dashed] (7,0)-- node[pos=1.1,above,right] {$4$}(7,2.6);
\draw[blue,dashed] (5.1,0)-- node[pos=1.1,above,left] {$3$}(5.1,3.7);
\draw[blue] (6,4.5) node[above] {$δE$};
%2nd peak
\draw[thick,red,rounded corners=4mm] (3.3,0) -- (3,2.5) -- (1,3.5) -- (0.7,0);
\draw[red,dashed] (2.9,0)-- node[pos=1.1,above,right] {$1$}(2.9,2.3);
\draw[red,dashed] (1.1,0)-- node[pos=1.1,above,left] {$2$}(1.1,3.25);
\draw[red] (2,4.5) node[above] {$δE$};
\end{tikzpicture}
\end{document}
また、ノード 1、2、3、4 のコードも簡略化しました。