Add expense-by-category figure
This commit is contained in:
@@ -212,5 +212,97 @@
|
||||
\end{figure}
|
||||
|
||||
|
||||
\begin{figure}[H]
|
||||
\centering
|
||||
|
||||
% Read table
|
||||
\pgfplotstableread[col sep=comma]{expenses_by_category.csv}\expbycattable
|
||||
\pgfplotstablegetcolsof{\expbycattable}
|
||||
\pgfmathtruncatemacro\NumCols{\pgfplotsretval-1}
|
||||
|
||||
\begin{subfigure}[c]{\textwidth}
|
||||
\centering
|
||||
|
||||
\begin{tikzpicture}
|
||||
\begin{axis}[
|
||||
stack plots=y,
|
||||
area style,
|
||||
date coordinates in=x,
|
||||
width=\textwidth,
|
||||
height=0.375\textwidth,
|
||||
xticklabel=\month.\shortyear{\year},
|
||||
xtick=data,
|
||||
enlargelimits=false,
|
||||
xticklabel style={
|
||||
rotate=60,
|
||||
anchor=near xticklabel,
|
||||
},
|
||||
legend columns=5,
|
||||
legend style={at={(0.5,-0.6)},anchor=south},
|
||||
ylabel={Expenses in €},
|
||||
ymin=0,
|
||||
]
|
||||
% For each
|
||||
\pgfplotsinvokeforeach{0,...,\NumCols/2 -1}{
|
||||
% Define color
|
||||
\pgfmathparse{1000 / (\NumCols/2 -1) * #1}
|
||||
\extractcolormapcolor{tempcol#1}{\pgfmathresult}
|
||||
|
||||
% Add plot
|
||||
\addplot+[tempcol#1]
|
||||
table[col sep=comma, x=t, y index=#1]
|
||||
{\expbycattable} \closedcycle;
|
||||
|
||||
% Add legend entry (https://tex.stackexchange.com/a/405018)
|
||||
\pgfplotstablegetcolumnnamebyindex{#1}\of{\expbycattable}\to\pgfplotsretval
|
||||
\expandafter\addlegendentry\expandafter{\pgfplotsretval}
|
||||
}
|
||||
\end{axis}
|
||||
\end{tikzpicture}
|
||||
\end{subfigure}\\[1em]
|
||||
\begin{subfigure}[c]{\textwidth}
|
||||
\centering
|
||||
|
||||
\begin{tikzpicture}
|
||||
\begin{axis}[
|
||||
stack plots=y,
|
||||
area style,
|
||||
date coordinates in=x,
|
||||
width=\textwidth,
|
||||
height=0.375\textwidth,
|
||||
xticklabel=\month.\shortyear{\year},
|
||||
xtick=data,
|
||||
enlargelimits=false,
|
||||
xticklabel style={
|
||||
rotate=60,
|
||||
anchor=near xticklabel,
|
||||
},
|
||||
legend columns=5,
|
||||
legend style={at={(0.5,-0.6)},anchor=south},
|
||||
ylabel={Expenses in €},
|
||||
ymin=0,
|
||||
]
|
||||
% For each
|
||||
\pgfplotsinvokeforeach{\NumCols/2,...,\NumCols-1}{
|
||||
% Define color
|
||||
\pgfmathparse{1000 * (#1 - \NumCols/2) / (\NumCols-1 - \NumCols/2)}
|
||||
\extractcolormapcolor{tempcol#1}{\pgfmathresult}
|
||||
|
||||
% Add plot
|
||||
\addplot+[tempcol#1]
|
||||
table[col sep=comma, x=t, y index=#1]
|
||||
{\expbycattable} \closedcycle;
|
||||
|
||||
% Add legend entry (https://tex.stackexchange.com/a/405018)
|
||||
\pgfplotstablegetcolumnnamebyindex{#1}\of{\expbycattable}\to\pgfplotsretval
|
||||
\expandafter\addlegendentry\expandafter{\pgfplotsretval}
|
||||
}
|
||||
\end{axis}
|
||||
\end{tikzpicture}
|
||||
\end{subfigure}
|
||||
|
||||
\caption{Expenses by category}
|
||||
\end{figure}
|
||||
|
||||
\end{document}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user