ディスクからCSVファイルを読み込み、読み込んだテーブルを転置したいです。ドキュメントにテーブルを作成するときは、pgfplotstabletranspose
コマンドに問題はありません。しかし、ディスクからファイルを読み込もうとすると、次のようなエラーが発生します。
パッケージ pgfplots エラー: 申し訳ありませんが、テーブル 'attachments/paper_survey.csv' から列 'Label' を取得できませんでした。スペルを確認してください (または名前のエイリアスを導入してください)。
これは私の MWE です:
\documentclass[]{article}
\usepackage{pgfplots,pgfplotstable}
\begin{document}
\pgfplotstableread[col sep=semicolon]{% Read the data into a table macro
Label;A;B;C;D;E;F;G;H;I;J;K;L;M;N;O
Yes;0.00;0.20;0.00;0.26;0.11;0.00;;0.49;0.14;0.31;0.03;0.60;0.06;0.06;0.00
No;1.00;0.80;1.00;0.74;0.89;1.00;;0.51;0.86;0.69;0.97;0.40;0.94;0.94;0.00
High;0.00;0.00;0.00;0.00;0.00;0.00;0.00;0.00;0.00;0.00;0.00;0.00;0.00;0.00;0.26
Medium;0.00;0.00;0.00;0.00;0.00;0.00;0.00;0.00;0.00;0.00;0.00;0.00;0.00;0.00;0.21
Low;0.00;0.00;0.00;0.00;0.00;0.00;0.00;0.00;0.00;0.00;0.00;0.00;0.00;0.00;0.53
}\datatable
% \pgfplotstableread[col sep = semicolon]{attachments/paper_survey.csv}\datatable
\pgfplotstabletranspose[string type,
colnames from=Label,
input colnames to=Label
]\datatabletransposed{\datatable}
\end{document}
これをどうすれば修正できますか?
答え1
添付ファイルのサブフォルダからデータを実行することに問題はありません
はい/いいえのスロットが空で、「O」の値が0なので、「G」の値を確認することをお勧めします。
この組み合わせは私の場合はうまくいったので、サブフォルダ/ファイル名が正しいことを再確認してください。
メインTeXフォルダ/添付ファイル/paper_survey.csv
Label;A;B;C;D;E;F;G;H;I;J;K;L;M;N;O
Yes;0.00;0.20;0.00;0.26;0.11;0.00;0.0;0.49;0.14;0.31;0.03;0.60;0.06;0.06;0.00
No;1.00;0.80;1.00;0.74;0.89;1.00;0.0;0.51;0.86;0.69;0.97;0.40;0.94;0.94;0.00
High;0.00;0.00;0.00;0.00;0.00;0.00;0.00;0.00;0.00;0.00;0.00;0.00;0.00;0.00;0.26
Medium;0.00;0.00;0.00;0.00;0.00;0.00;0.00;0.00;0.00;0.00;0.00;0.00;0.00;0.00;0.21
Low;0.00;0.00;0.00;0.00;0.00;0.00;0.00;0.00;0.00;0.00;0.00;0.00;0.00;0.00;0.53
プロット方法を選択しなかったため、以前の質問と同じ方法を使用しました
\documentclass[]{article}
\usepackage{pgfplots,pgfplotstable}
\pgfplotsset{compat=1.16}
\begin{document}
\pgfplotstableread[col sep = semicolon]{attachments/paper_survey.csv}\datatable
\begin{tikzpicture}
\pgfplotstabletranspose[string type, colnames from=Label, input colnames to=Label]\datatabletransposed{\datatable}
\begin{axis}[
xbar stacked, % Stacked horizontal bars
xmin=0, % Start x axis at 0
ytick=data, % Use as many tick labels as y coordinates
yticklabels from table={\datatabletransposed}{Label} % Get the labels from the Label column of the \datatable
]
\addplot [fill=green!70!blue] table [x=Yes, y expr=\coordindex] {\datatabletransposed};
\addplot [fill=red!70!blue] table [x=No, y expr=\coordindex] {\datatabletransposed};
\end{axis}
\end{tikzpicture}
\end{document}