如何绘制圆锥螺旋/重绘图?

如何绘制圆锥螺旋/重绘图?

我正在尝试重新绘制下面的图表。我将其用作我正在编写的文档中的范例/参考,但我需要它更清晰,因此重新绘制。

图表/螺旋

我尝试在 Inkscape 中绘制它,但失败了。经过一段时间的思考,我认为实际上可以使用 Tikz 之类的数学方法完成(也许更好)。我查看了这里的问题,我发现相似的但这不是我需要的。

到目前为止,我的代码只是一朵可怜的云和一个椭圆,缺少关键的二维螺旋锥:

\documentclass[]{minimal}

\usepackage{amsmath,amsfonts,amssymb}
\usepackage{tikz}
\usetikzlibrary{shapes}
\usetikzlibrary{automata,positioning}

\begin{document}
\begin{tikzpicture}
\node [cloud, draw,cloud puffs=10,cloud puff arc=120, aspect=2, inner ysep=1em,text width=1cm]{Needs\\and\\Ideas};
\draw  (0,-10) ellipse (4 and 2);
\end{tikzpicture}
\end{document} 

答案1

您可以使用(point a) to [in=degree,out=degree,looseness=value]它来绘制弯曲的线条。我使用了两组,在一个循环中计算坐标。之后,使用另一个循环来设置描述。这个答案使用卡拉姆迪尔的解决方案这个问题

代码

\documentclass[tikz,border=2mm]{standalone}
\usetikzlibrary{arrows,decorations.markings,shapes}
\renewcommand*\familydefault{\sfdefault}

\begin{document}
\begin{tikzpicture}
\foreach \x in {1,...,7}
{   \draw[decoration={markings, mark=at position 0.8+\x/60 with {\arrow{latex}}},postaction=decorate] (1+\x/5,-1-\x) to [out=90,in=90,looseness=0.5] (-1-\x/5,-1-\x) node[xshift=-0.05cm] (gate-\x) {\footnotesize stage gate};
    \draw (1+\x/5,-1-\x) to [out=270,in=270,looseness=0.5] (-0.8-\x/5,-\x);
}
\foreach \gate [count=\c] in {asdf,sdfg sdfg,dfgh dfgh dfgh,fghj fghj,ghjk,hjkl hjkl hjkl,TeX TeX TeX TeX}
{ \node[text width=2cm, align=right,left=1cm] at (gate-\c) {\gate};
}
\draw (-2.4,-8) to [out=270, in =120] (-1.5,-9);

\node [cloud, draw,cloud puffs=10,cloud puff arc=120, aspect=2, inner ysep=1em,text width=1cm,fill=white]{Needs\\and\\Ideas};
\draw[fill=white]  (0,-10) ellipse (4 and 2);
\end{tikzpicture}
\end{document} 

输出

在此处输入图片描述

相关内容