我遇到一个问题,我插入的矩阵行与行之间的间隙非常大。出于某种原因,每行之间的间隙约为 10.5 厘米,我不知道为什么。以下代码创建了此图像,矩阵框顶部超出了页面。可以看出,图例和引导任务节点之间存在相当大的间隙。
\documentclass[a4paper,12pt]{article}
%Packages included
\usepackage[printwatermark]{xwatermark}
\usepackage{tikz}
\usepackage{xcolor}
\usepackage{sectsty}
\usepackage{graphicx}
\usepackage{hyperref}
\usepackage[margin=2cm]{geometry}
\usepackage{cite}
\usepackage{pdfpages}
\usepackage{tikz}
\usetikzlibrary{shapes, arrows, chains, positioning}
\usepackage{float}
\begin{document}
\begin{figure} [H]
\centering
\begin{tikzpicture}[
>=triangle 60,
start chain=going below,
node distance=0.6cm and 6cm,
every join/.style={norm},
]
\tikzset{
base/.style={draw, on chain, on grid, align=center, minimum height=4ex, text=black},
box/.style={base, rectangle, text width=10em},
corner/.style={box, rounded corners},
norm/.style={->, draw},
test/.style={base, diamond, aspect=2, text width=5em},
fac/.style={box, dotted},
coord/.style={coordinate, on chain, on grid, node distance=0.6cm and 2cm}
}
\node [corner] (start) {Start of process};
\node [fac, join] {Assemble expert panel};
\node [box, join] (stp) {Panel review's indicators};
\node [box, join] {Panel provides anonymous feedback};
\node [fac, join] {Feedback reviewed by facilitator};
\node [test, join] (cons) {Consensus reached?};
\node [box] (fin) {Final indicator set compiled};
\node [box, join] {Indicators added to protocol, updated minimum data set added to protocol};
\node [corner, join] {Process finished};
\node [fac, right =of cons] (upd) {Indicators updated in line with feedback};
\node [fac, left=of stp] (ind) {Indicators sourced from literature, best practice guidelines, etc.};
\node [coord, right=of cons] (c1) {};
\path (cons.south) to node [near start, xshift=0.5em] {$y$} (fin);
\draw [*->] (cons.south) -- (fin);
\path (cons.east) to node [near start, yshift=0.5em] {$n$} (c1);
\draw [*->] (cons.east) -- (upd);
\draw [->] (upd.north) |- (stp);
\draw [->] (start.west) -| (ind);
\draw [->] (ind.east) -- (stp);'
\matrix [draw, above left] at (current bounding box.south east) {
\node [box, text width=1em, color=white, label=right:\emph{Legend}] {};\\
\node [fac, text width=1em, label=right:Facilitator Task] {}; \\
};
\end{tikzpicture}
\caption{Formal process for CQIs}
\label{fig:delphi1}
\end{figure}
\end{document}
我目前刚接触 Latex,正在从许多不同的来源和教程中学习,所以我的代码可能没有意义。
答案1
欢迎!矩阵中的节点具有键on chain
和on grid
,它们从中继承base
。您需要删除这些键。
\documentclass[a4paper,12pt]{article}
\usepackage[margin=2cm]{geometry}
\usepackage{tikz}
\usetikzlibrary{shapes, arrows, chains, positioning}
%\usepackage{float}
\begin{document}
\begin{figure} [htb]
\centering
\begin{tikzpicture}[start chain=going below,
>=triangle 60,
node distance=0.6cm and 6cm,
every join/.style={norm},
]
\tikzset{
mbase/.style={draw, align=center, minimum height=4ex, text=black},
base/.style={mbase,on chain,on grid},
mbox/.style={mbase, rectangle, text width=10em},
box/.style={base, rectangle, text width=10em},
corner/.style={box, rounded corners},
norm/.style={->, draw},
test/.style={base, diamond, aspect=2, text width=5em},
fac/.style={box, dotted},
mfac/.style={mbox, dotted},
coord/.style={coordinate, on chain, on grid, node distance=0.6cm and 2cm}
}
\node [corner] (start) {Start of process};
\node [fac, join] {Assemble expert panel};
\node [box, join] (stp) {Panel review's indicators};
\node [box, join] {Panel provides anonymous feedback};
\node [fac, join] {Feedback reviewed by facilitator};
\node [test, join] (cons) {Consensus reached?};
\node [box] (fin) {Final indicator set compiled};
\node [box, join] {Indicators added to protocol, updated minimum data set added to protocol};
\node [corner, join] {Process finished};
\node [fac, right =of cons] (upd) {Indicators updated in line with feedback};
\node [fac, left=of stp] (ind) {Indicators sourced from literature, best practice guidelines, etc.};
\node [coord, right=of cons] (c1) {};
\path (cons.south) to node [near start, xshift=0.5em] {$y$} (fin);
\draw [*->] (cons.south) -- (fin);
\path (cons.east) to node [near start, yshift=0.5em] {$n$} (c1);
\draw [*->] (cons.east) -- (upd);
\draw [->] (upd.north) |- (stp);
\draw [->] (start.west) -| (ind);
\draw [->] (ind.east) -- (stp);'
\matrix [draw, above left] at (current bounding box.south east) {
\node [mbox, text width=1em, color=white, label=right:\emph{Legend}] {};\\
\node [mfac, text width=1em, label=right:Facilitator Task] {}; \\
};
\end{tikzpicture}
\caption{Formal process for CQIs}
\label{fig:delphi1}
\end{figure}
\end{document}