我正在从事的项目需要很多流程图,使用Tikz
软件包创建所有内容会花费我很多时间。LetexDraw
我使用一种基于 Java 的工具来制作图表,我知道哪种工具也可以在 Tikz 中准备图表。但是有没有专门为流程图设计的工具或基于 Web 的工具,或者易于准备流程图的工具?目前,我正在使用以下代码TikzEd
准备流程图:tikz
\documentclass[12pt]{article}
\usepackage{tikz}
\usetikzlibrary{shapes.geometric, arrows}
\tikzstyle{startstop} = [rectangle, rounded corners, minimum width=3cm, minimum height=1cm,text centered, draw=black, fill=red!30]
\tikzstyle{io} = [trapezium, trapezium left angle=70, trapezium right angle=110, minimum width=3cm, minimum height=1cm, text centered, draw=black, fill=blue!30]
\tikzstyle{process} = [rectangle, minimum width=3cm, minimum height=1cm, text centered, draw=black, fill=orange!30]
\tikzstyle{decision} = [diamond, minimum width=3cm, minimum height=1cm, text centered, draw=black, fill=green!30]
\tikzstyle{arrow} = [thick,->,>=stealth]
\begin{document}
\begin{figure}
\centering
\begin{tikzpicture}[node distance=2cm]
% processes
\node (start) [startstop] {Start};
\node (in1) [io, below of=start] {Input};
\node (pro1) [process, below of=in1] {Process 1};
\node (dec1) [decision, below of=pro1,yshift=-0.5cm] {Decision 1};
\node (pro2a) [process, below of=dec1, yshift=-0.5cm] {Process 2adsjksdjfksdjfksdfjksd};
\node (pro2b) [process, right of=dec1, xshift=2cm] {Process 2b};
\node (out1) [io, below of=pro2a] {Output};
\node (stop) [startstop, below of=out1] {Stop};
%arrows
\draw [arrow] (start) -- (in1);
\draw [arrow] (in1) -- (pro1);
\draw [arrow] (pro1) -- (dec1);
\draw [arrow] (dec1) -- (pro2a);
\draw [arrow] (dec1) -- (pro2b);
\draw [arrow] (dec1) -- node[anchor=east] {yes} (pro2a);
\draw [arrow] (dec1) -- node[anchor=south] {no} (pro2b);
\draw [arrow] (pro2b) |- (pro1);
\draw [arrow] (pro2a) -- (out1);
\draw [arrow] (out1) -- (stop);
\end{tikzpicture}
\caption{Flow chart for Code} \label{fig:flchart}
\end{figure}
\end{document}
这是我正在使用的格式,我已按照 sharelatex 上提供的步骤进行操作,此代码的问题是我无法正确将其居中。当我有更大的盒子并且在同一行中有多个阶段时。
** PS 我已经解决了问题,我可以设法获得好看的流程图,但我的问题是需要花费大量时间来按我想要的方式排列节点和箭头。每次编辑中间步骤时,我都必须修改班次,所以,我只是想问是否有任何工具(例如 TikzEd)可以减少制作流程图的工作量 **