使用 Tikz 绘制图表

使用 Tikz 绘制图表

我想用 Tikz 绘制此图:

在此处输入图片描述

我有这个代码:

\begin{tikzpicture}[scale=0.2]                                                                                          
 \begin{scope}                                                                                                          
% Relleno gris superior e^x                                                                                             
                   clip \fill [color=gray!40, domain=-1.2:1.2, variable=\x]                                             
                   (-1.2, 0)                                                                                            
                   -- plot ({\x}, {exp(\x)})                                                                            
                   -- (-1.2, 3.29) -- cycle;                                                                            
                   % % Relleno blanco inferior de e^-x                                                                  
                   clip \fill [color=white, domain=-1.2:1.2, variable=\x]                                               
                   (-1.2, 0)                                                                                            
                   -- plot ({\x}, {exp(-\x)})                                                                           
                   -- (1.2, 0) -- cycle;                                                                                
                    \end{scope}                                                                                         
                    \begin{scope}                                                                                       
                   % Relleno gris inferior  e^x                                                                         
                   clip \fill [color=gray!40, domain=-1.2:1.2, variable=\x]                                             
                   (-1.2, 0)                                                                                            
                   -- plot ({\x}, {exp(\x)})                                                                            
                   -- (1.2,0) -- cycle;                                                                                 
                   % Relleno blanco inferior de e^-x                                                                    
                   clip \fill [color=white, domain=-1.2:1.2, variable=\x]                                               
                   (-1.2, 3.29)                                                                                         
                   -- plot ({\x}, {exp(-\x)})                                                                           
                   -- (1.2, 3.29) -- cycle;                                                                             
                 \end{scope}                                                                                            
                   % Funciones e^x                                                                                      
                   \draw[-] plot[domain=-1.2:1.2] (\x,{exp(\x)});                                                       
                                      % Funciones e^-x                                                                  
                   \draw[-] plot[domain=-1.2:1.2] (\x,{exp(-\x)});                                                      
                   % coordinate grid                                                                                    
                   \draw[->] (-4,0)--(4,0) node[right]{$x$};                                                            
                   \draw[->] (0,-4)--(0,4) node[above]{$y$};                                                            
                   \draw (0,1) node[ right] {{\tiny $1$}};                                                              
                 \end{tikzpicture}

是错的:在此处输入图片描述

答案1

欢迎!从你的照片上看我不知道你想要哪一个。

\documentclass[tikz,border=3mm]{standalone}
\begin{document}
\begin{tikzpicture}[>=stealth,%
    p1/.style={insert path={plot[domain=-1.2:1.2] (\x,{exp(\x)})}},
    p2/.style={insert path={plot[domain=-1.2:1.2] (\x,{exp(-\x)})}}]
 % fills
 % upper
 \begin{scope}
  \clip[p1] -| cycle;
  \fill[gray!40,p2] |- cycle;
 \end{scope}
 % lower
 \begin{scope}
  \clip[p1] -- (1.2,0) -| cycle;
  \fill[gray!40,p2]  -- (1.2,0) -| cycle;
 \end{scope}
 % plots
 \draw[->] (-4,0)--(4,0) node[right]{$x$};                                                            
 \draw[->] (0,-4)--(0,4) node[above]{$y$};                                                            
 \path (0,1) node[right,font=\tiny] {$1$};        
 \draw[semithick,p1];                                                       
 \draw[semithick,p2];          
\end{tikzpicture}

\begin{tikzpicture}[>=stealth,%
    p1/.style={insert path={plot[domain=-1.2:1.2] (\x,{exp(\x)})}},
    p2/.style={insert path={plot[domain=-1.2:1.2] (\x,{exp(-\x)})}}]
 % fills
 % upper
 \begin{scope}
  \clip[p1] -| cycle;
  \fill[gray!40,p2] |- cycle;
 \end{scope}
 % lower
 \begin{scope}
  \clip[p1]  |- cycle;
  \fill[gray!40,p2]   -| cycle;
 \end{scope}
 % plots
 \draw[->] (-4,0)--(4,0) node[right]{$x$};                                                            
 \draw[->] (0,-4)--(0,4) node[above]{$y$};                                                            
 \path (0,1) node[right,font=\tiny] {$1$};        
 \draw[semithick,p1];                                                       
 \draw[semithick,p2];          
\end{tikzpicture}
\end{document}

在此处输入图片描述

我认为这和你的想法很相似,但是如果你使用

 clip \fill

没有clip任何效果。此外,将重复使用的路径存储在类似p1p2这里的样式中可能更简单。

您实际上并不需要剪辑。

\documentclass[tikz,border=3mm]{standalone}
\begin{document}
\begin{tikzpicture}[>=stealth,%
    p1/.style={insert path={plot[domain=-1.2:1.2] (\x,{exp(\x)})}},
    p2/.style={insert path={plot[domain=-1.2:1.2] (\x,{exp(-\x)})}}]
 % fill
 \fill[gray!40,p1]  --  plot[domain=-1.2:1.2] (\x,{exp(-\x)});
 % plots
 \draw[->] (-4,0)--(4,0) node[right]{$x$};                                                            
 \draw[->] (0,-4)--(0,4) node[above]{$y$};                                                            
 \path (0,1) node[right,font=\tiny] {$1$};        
 \draw[semithick,p1];                                                       
 \draw[semithick,p2];          
\end{tikzpicture}
\end{document}

在此处输入图片描述

另一个版本的工作方式类似。

相关内容