如何使用最少数据来校正不遵循全局选项的 PGFPLOT 图?

如何使用最少数据来校正不遵循全局选项的 PGFPLOT 图?

我的测试数据不完整,如 MWE 所示。我想在绘图中使用所有(少数)可用数据点,即铜的(55.16, 0.08),但绘图未将其考虑在内。此外,逗号分隔符等全局选项不起作用(它仅适用于原生 y =0.5 y 刻度标签,而不适用于添加的 y 刻度标签。(但它们与手册中的一个绘图配合良好,因此问题出在我的数据和/或绘图选项上。我也无法在绘图中使用“仅标记”选项,这可能有意义。

\documentclass[]{scrartcl}
\usepackage{siunitx}
\usepackage{filecontents}
\usepackage{pgfplots}
\usepackage{pgfplotstable}


\pgfplotsset{compat=newest,
every linear axis/.append style={
/pgf/number format/use comma,
/pgf/number format/fixed,
}}

\begin{document}

\begin{filecontents}{data-W.csv}
{Stress};{Aluminium};{Copper}
3.44;0.0015;0.001
6.89;0.1;0.002
10.34;0.2; 
11.72; ;0.0068
13.79; ; 
15.51;0.5; 
17.24; ; 
20.68;1;0.01
24.13; ; 
27.58; ; 
31.03; ; 
34.47; ;
37.92; ; 
41.37; ;0.04
44.82; ; 
48.26; ; 
55.16; ;0.08
\end{filecontents}

\pgfplotstableread[col sep=semicolon]{data-W.csv}{\datatableW}

\begin{tikzpicture}
\begin{axis}[
height=.5\textwidth, width=\textwidth,
xticklabel style= {font={\small}},
grid=both,
%xticklabels from table={\datatableW}{[index]0}, %does not accept plot settings
 extra y ticks={.1,.3,.5,.7,.9},  % Did not accept global option but now does
%extra y tick labels={.1,.3,.5,.7,.9} % not necessary now
xlabel={Stress (\si{\mega\pascal})}, 
ylabel={Relaxation (\%)}, 
legend entries={Pure aluminium,Copper}, ]
\addplot [blue,only marks]  table [ 
x index =0, y index=1] {\datatableW};
% x expr=\coordindex, x index =0,{\datatableW}; % Incorrect
\addplot [red,]  table [
x index =0, 
%x expr=\coordindex, x index =0, % incorrect
y index=2] {\datatableW}; 
\end{axis} \end{tikzpicture}

\end{document}

答案1

剧情选项中有几个错误(以及剧情总体设定中的矛盾)导致了这些问题。我编辑了代码来突出显示和纠正它们。我仍然不清楚为什么选项

xticklabels from  table={\datatableW}{[index]0}

似乎不接受全局剧情设定,但是去掉它会让剧情变得更普通更好看,更符合逻辑。

相关内容