使用 TikZ 标记从 Paraview 导出的图表

使用 TikZ 标记从 Paraview 导出的图表

我正在使用 Paraview 可视化一些数据。是否可以使用 TikZ 包标记从 Paraview 中获取的图表。我对这个包的了解有限。我的标记图像看起来像这样:

在此处输入图片描述

是否可以使用 TikZ 创建这样的标签?如果可以,如何实现?

答案1

尽管 KersouMan 指出,已经提出了多种解决方案。我个人非常喜欢Max 提出的解决方案这与我的问题密切相关。所以如果你喜欢这个答案,请为他点赞。

我添加了其他node一些注释,以帮助您理解脚本。当然,所有这些都假设您实际上已将绘图Paraview作为图形文件(例如 pdf、png、jpg...)提供。

编辑添加一个与两个箭头相连的节点。

\documentclass[tikz]{standalone}
\tikzset{
    % Tikz style used to work in relative coordinates to the underlying picture
    % From https://tex.stackexchange.com/a/445311/141947
    use bounding box relative coordinates/.style={
        shift={(current bounding box.south west)},
        x={(current bounding box.south east)},
        y={(current bounding box.north west)}
    },
    % Shortcut to avoid repeating stuff afterwards
    label/.style={fill=white,draw=black},
}
\begin{document}

\begin{tikzpicture}
% Import picture and select it as bounding box
\node[use as bounding box] {\includegraphics{example-image-a}};
% Activate relative positioning of points
\begin{scope}[use bounding box relative coordinates]
    \node[label] at (0.8,0.8) {TE};
    \node[label] at (0.8,0.2) {LE};
    % Create an arrow between point at coordinates (0.2,0.4) and a point a 60° angle and 0.5 distance from the first one
    \draw[stealth-] (0.2,0.4) --++ (60:0.5) node[pos=1,label,anchor=west]{Horseshoe vortex} ;
    % Create a label, then draw arrrows linked to it
    \node[label] (IndVortLabel) at (0.3,0.3) {Induced vortices};
    \draw[] (IndVortLabel.west) edge[-stealth] (0.1,0.35)
            (IndVortLabel.west) edge[-stealth] (0.1,0.25);
\end{scope}
\end{tikzpicture}
\end{document}

在此处输入图片描述

相关内容