
上部の軸 (主グリッドの上の数字) で小数点区切りとしてコンマを使用するにはどうすればよいでしょうか?
グラフを改善するためのあらゆる提案を歓迎します。
基本要件
- (長い)浮動小数点数とエラーを含む .csv データを使用する
- グループ化されたペアで情報を表示(同じテストボディで異なるクランプ設定)
- エラー情報(かなり大きい場合もあります)
- 各バーの値を表示するのではなく、各グループの平均を表示します
試してみたところ、小数点区切りが点平均プロットになるという問題がありました。(また、マークやその他のものを表示したくありません。ラベルは黒で印刷する必要があります)
基本的なセットアップはパッケージ PGFSPLOTS のマニュアル第8.6章551ページ。
私が試したこと
私は CSV を変更したくありません (区切り文字としてセミコロンを使用し、小数点区切りにコンマを使用)。私は sinuitx を使用しています。これをメタ情報に適用するオプションがあれば、試してみる価値があるかもしれません。.csv 内のラベル データを {} で囲むことも試しましたが、役に立ちませんでした。
LaTeXコード:
% !TeX encoding = UTF-8
\documentclass[11pt, border=5pt]{standalone}
\usepackage[utf8]{inputenc}
\usepackage[ngerman]{babel}
\usepackage{pgfplots}
\pgfplotsset{compat=1.16}
\usepackage{pgfplotstable}
\usepackage{siunitx}
\begin{document}
\begin{tikzpicture}
\begin{axis}[
/pgf/number format/.cd,
use comma,
height = 7cm,
width = 8.5cm,
ymajorgrids,
ylabel={The mighty Force in \si{\newton}},
xlabel={A strong Opponent},
ymin = 0,
ymax= 1.75,
ybar=0pt,
bar width=12pt,
enlarge x limits = 0.3,
nodes near coords,
point meta=explicit symbolic,
scatter/position=absolute,
every node near coord/.style={
at={(\pgfkeysvalueof{/data point/x},1.8)},
anchor=south,
},
bar shift=0pt,
xtick={0,1,2},
xticklabels={metal,wood,paper},
x tick label style={rotate=45,anchor=east},
]
\addplot+[bar shift = -12pt]
plot [error bars/.cd, y dir=both, y explicit]
table [x=ID, y=A, y error=Aun, col sep=comma] {data.csv};
\addplot+[bar shift = +12pt]
plot [error bars/.cd, y dir=both, y explicit]
table [x=ID, y=B, y error=Bun, col sep=comma] {data.csv}; % Läd die Daten aus der CSV Datei
\addplot
plot [error bars/.cd, y dir=both, y explicit]
table [x=ID, y=C, y error=Cun, col sep=comma] {data.csv}; % Läd die Daten aus der CSV Datei
\addplot[only marks]
plot table [x=ID, col sep=comma, meta=label] {data.csv}; % Läd die Daten aus der CSV Datei
\end{axis}
\end{tikzpicture}
\end{document}
data.csv の内容:
ID,A,Aun,B,Bun,C,Cun,label
0,0.2,0.05,0.3,0.025,0.1,0.03,0.2
1,0.6,0.05,0.4,0.07,0.8,0.045,0.6
2,1.1,0.1,1.3,0.02,1.5,0.06,1.3
答え1
私はさまざまなことを試しましたが、複数の間違いを犯しました。解決策に加えて、次の2つが重要です。
- インデックスとメタのみを含むファイルを使用しないでください。
\pgfplotstabletypeset
では使用しないでくださいtikzpicture
。こちらをご覧ください
私の問題に対する簡単な解決策は、ファイル形式を次のように変更することです。スペースで区切られた以上です。オプションは、explicit symbolic
"新しい" .dat ファイルを正しく読み取るための残りの処理をすでに行っています...