我正在尝试制作一个groupplot
带有两个轮廓图的图表。我怀疑如果有足够的时间,我可以自己解决这个问题,但我面临着时间紧迫的问题……
作为背景,这groupplot
是为了取代黑白两色中表现不佳的两个表面的图。这是表面
每个表面代表一种算法,其目的是表明一种算法对 alpha 参数不敏感,而另一种算法对 lambda 参数不敏感。
我以前从未绘制过pgfplots
等高线图,所以我从基础开始。这是其中一个等高线图的代码……数据文件可以在以下位置找到http://pastebin.com/TzJJ7KZF
\documentclass{article}
\usepackage{pgfplots}
\usepgfplotslibrary{groupplots}
\usetikzlibrary{pgfplots.groupplots}
\pgfplotsset{compat = 1.12}
\begin{document}
\begin{figure}
\begin{tikzpicture}
\begin{axis}
\addplot[contour/draw color=black, contour/label distance=100pt,contour prepared, contour prepared format=matlab]
table {CAG_Contour.dat};
\end{axis}
\end{tikzpicture}
\end{figure}
\end{document}
这产生了下图
我知道它很粗糙...缺少轴标签,并且由于某种原因,这 14 个重叠,但我想我可以解决这个问题。
但当我尝试将两个轮廓放在一起时,groupplot
我却力不从心。代码如下……数据文件可以在 CAG_Contour.dat 中找到pastebin在这里并且 PPR_Contour.dat 位于pastebin在这里
\documentclass{article}
\usepackage{pgfplots}
\usepgfplotslibrary{groupplots}
\usetikzlibrary{pgfplots.groupplots}
\pgfplotsset{compat = 1.12}
\begin{document}
\begin{figure}
\centering
\begin{tikzpicture}
\begin{groupplot}[
group style={
group size=2 by 1,
xlabels at=edge bottom,
ylabels at=edge left},
xlabel = {\footnotesize $\alpha_{++}$},
ylabel = {\footnotesize Departure Rate}]
\nextgroupplot[title={\scriptsize Come and Go}]
\addplot+[contour/draw color=black,contour prepared, contour prepared format=matlab]
table {CAG_Contour.dat};
\nextgroupplot[title={\scriptsize ++Resources}]
\addplot+[contour prepared, contour prepared format=matlab]
table {PPR_Contour.dat};
\end{groupplot}
\end{tikzpicture}
\end{figure}
\end{document}
得到的图如下所示
我无论如何也想不出如何绘制轮廓线
黑色
宽度较小
或者如何增加标签之间的间距
显然这种contour/draw color=black
方法并不正确。
抱歉,问题问得这么差……理想情况下,我应该明天就把这个问题提交给我的委员会……
答案1
您也在绘制标记,由于这些标记彼此太近,线条看起来很粗。为此,请从中删除+
或\addplot
将选项传递no marks
给\addplot
。然后可以看到改变颜色的效果。
\documentclass{article}
\usepackage{pgfplots}
\pgfplotsset{compat=1.12}
\usepgfplotslibrary{groupplots}
\begin{document}
\begin{figure}
\centering
\begin{tikzpicture}
\begin{groupplot}[
group style={
group size=2 by 1,
xlabels at=edge bottom,
ylabels at=edge left},
xlabel = {\footnotesize $\alpha_{++}$},
ylabel = {\footnotesize Departure Rate}]
\nextgroupplot[title={\scriptsize Come and Go}]
\addplot+[no marks,contour/draw color=black,contour prepared, contour prepared format=matlab,contour/every contour label/.append style={every node/.style={black!50,fill=white}}]
table[x index=0,y index=1] {CAG_Contour.dat};
\nextgroupplot[title={\scriptsize ++Resources}]
\addplot[contour/draw color=black,contour prepared, contour prepared format=matlab, contour/every contour label/.append style={every node/.style={black!50,fill=white}}]
table[x index=0,y index=1] {PPR_Contour.dat};
\end{groupplot}
\end{tikzpicture}
\end{figure}
\end{document}
为了改变标签的颜色,我使用了
contour/every contour label/.append style={every node/.style={black!50,fill=white}}
随着
contour/draw color=black,
您可以通过以下方式更改标签之间的距离
contour/label distance={<dimension>}