matlab2tikz 忽略误差线

matlab2tikz 忽略误差线

我使用matlab2tikz带有水平误差线的图,但pgfplots生成的文件不包含误差线,而其他一切都很好。我在 matlab 中像这样绘制我的数据:

y = [604.40,599.84,602.23,616.96,582.62,575.40,570.14,572.77,574.53];
x =  [4.05  ,4.05  ,4.05  ,4.05  ,4.20  ,4.37  ,4.55  ,4.55  ,4.37  ];
ebars =  [0.0563,0.0563,0.0326,0.0326,0.0350,0.0254,0.0437,0.0437,0.0254];
figure(1)
clf
errorbar(x,y,2*ebars,'horizontal','o')
legend('s1');

这给了我这个:

原始 matlab 图

当我运行 matlab2tikz 时,生成的文件是:

\definecolor{mycolor1}{rgb}{0.00000,0.44700,0.74100}%
%
\begin{tikzpicture}
\begin{axis}[%
width=3.358in,
height=2.309in,
at={(0.563in,0.312in)},
scale only axis,
xmin=3.8,
xmax=4.8,
ymin=570,
ymax=620,
axis background/.style={fill=white},
legend style={legend cell align=left, align=left, draw=white!15!black}
]
\addplot [color=mycolor1, draw=none, mark=o, mark options={solid, mycolor1}]
  table[row sep=crcr]{%
4.05    604.4\\
4.05    599.84\\
4.05    602.23\\
4.05    616.96\\
4.2 582.62\\
4.37    575.4\\
4.55    570.14\\
4.55    572.77\\
4.37    574.53\\
};
\addlegendentry{s1}
\end{axis}
\end{tikzpicture}%

这给了我这个: pgfplots 图

什么可能会阻止我的误差线延续?

答案1

据我了解,Matlab 在 2016b 版中加入了对水平误差线的支持(基于https://se.mathworks.com/matlabcentral/answers/99308-how-can-i-create-horizo​​ntal-error-bars-in-matlab?)但查看matlab2tikz代码,似乎仅支持垂直误差线。

我这里没有 Matlab 2016b 或更新版本,但在 2015b 中它可以按预期使用垂直误差线。

因此,导致错误栏无法使用的原因可能是 中没有实现错误栏matlab2tikz。在以下位置发布功能请求:https://github.com/matlab2tikz/matlab2tikz/issues


附录:JMJ 报告了此事https://github.com/matlab2tikz/matlab2tikz/issues/1016

相关内容