[pgfgantt] Meilenstein gesondert mit Datum markieren

Antwort erstellen


Diese Frage dient dazu, das automatisierte Versenden von Formularen durch Spam-Bots zu verhindern.
Smilies
:D :) :( :o :shock: :? 8) :lol: :-x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen:

BBCode ist eingeschaltet
[img] ist eingeschaltet
[flash] ist ausgeschaltet
[url] ist eingeschaltet
Smilies sind eingeschaltet

Die letzten Beiträge des Themas

Ich habe die Datenschutzerklärung gelesen und bin damit einverstanden.

   

Wenn du eine Datei oder mehrere Dateien anhängen möchtest, gib die Details unten ein.

Ansicht erweitern Die letzten Beiträge des Themas: [pgfgantt] Meilenstein gesondert mit Datum markieren

von Johannes_B » Mo 10. Feb 2014, 17:57

Ich habe oben noch ein wenig ergänzt.
Ich habe beide Varianten von \the. Mit und ohne \ danach. Einen Unterschied konnte ich bisher nicht festellten bzw. mir auch keiner erklären.
Wie meinst du das?

Nähere Informationen: texdoc latex2e (Schau dir bitte auch refstepcounter an)

von MoonKid » Mo 10. Feb 2014, 17:55

Prima so gehts.

Ich habe beide Varianten von \the. Mit und ohne \ danach. Einen Unterschied konnte ich bisher nicht festellten bzw. mir auch keiner erklären.

von Johannes_B » Mo 10. Feb 2014, 17:45

\documentclass{scrartcl}
\usepackage{pgfgantt}
\usepackage{xltxtra}
\usepackage{polyglossia}
\setdefaultlanguage[spelling=new]{german}
% Gantt
\newcounter{mymileC}
%\setcounter{mymileC}{0}%defaults to zero
\newcommand{\mymile}[2]{%
    \stepcounter{mymileC}%stepcounter 
    \ganttmilestone[name=m\themymileC]{#1}{#2} \\
    \node (datum\themymileC) [below=0 of m\themymileC] {\emph{#2}};
}

\begin{document}

Achte auf den korrekten Zugriff auf den Wert des Counters: 
 \newcounter{Hallo} \par
 \theHallo
 \stepcounter{Hallo}
 \theHallo

 \begin{verbatim} \newcounter{Hallo}
 \theHallo
 \stepcounter{Hallo}
 \theHallo
 \end{verbatim}



\begin{ganttchart}{1}{10}

\mymile{Test}{7}
\mymile{TestB}{8}

\end{ganttchart}

\end{document}

von MoonKid » Mo 10. Feb 2014, 17:33

Kleine Nachfrage zu dieser Lösung. Das ganze wollte ich in ein extra Makro packen. Irgendwas stört ihn aber daran.

Die zweite Variante funktioniert. Aber das Makrio \mymile geht nicht.
% mile.tex
\documentclass{scrartcl}

\usepackage{pgfgantt}

\usepackage{xltxtra}
\usepackage{polyglossia}
\setdefaultlanguage[spelling=new]{german}

% Gantt
\newcounter{mymileC}
\setcounter{mymileC}{0}
\newcommand{\mymile}[2]{%
    \addtocounter{mymileC}{1}
    \ganttmilestone[name=m\the\mymileC]{#1}{#2} \\
    \node (datum\the\mymileC) [below=0 of m\the\mymileC] {\emph{#2}};
}

\begin{document}
\begin{ganttchart}{1}{10}

    \mymile{Test}{7}

    %\ganttmilestone[name=x]{Meilenstein}{4} \\
    %\node (datumx) [below=0 of x] {\emph{4}};
\end{ganttchart}

\end{document}

von MoonKid » Mi 23. Okt 2013, 11:04

Zwei schöne Lösungen, wobei ich die erste reine Tikz-Lösung bevorzuge.

http://texwelt.de/wissen/fragen/2132/pg ... -markieren

[pgfgantt] Meilenstein gesondert mit Datum markieren

von MoonKid » Di 22. Okt 2013, 01:25

X-Post: http://texwelt.de/wissen/fragen/2132/pg ... -markieren

Ich möchte die Meilensteine in meinem Gantt-Chart gesondert mit einem Datum (also ein Label) versehen.

Am liebsten wäre mir eine vertikale Linie durch den Meilenstein, an dessen unterem Ende ein Datum steht. Also was wie die TODAY-Linie. Soweit ich weiß, kann man von der TODAY-Linie aber nur eine einzige Zeichnen. Ich benötige mehrere.

Alternativ könnte ich auch das Label der Meilensteine in das Gantt-Chart direkt (links) neben dem Meilenstein zeichnen (sieh auskommentierten Code). Hierbei ist aber das Problem, dass sich das für alle Chart-Elemente so verhält. Also auch die Labels der Bars rutschen vom Rand des Charts, dann direkt in die Bar.

Ich muss auf die Meilensteine einfach irgendwie einen Text mit Datum setzen können. Alternativ würde ich auch ein zweites Label draufsetzen.

Gibt es da pgfgantt-spezifische Möglichkeiten?
\documentclass{scrartcl}

\usepackage{pgfgantt}
\usetikzlibrary{shadows}
\usetikzlibrary{shadings}
\usetikzlibrary{shapes}

\usepackage{xltxtra}
\defaultfontfeatures{Mapping=tex-text}
\usepackage{polyglossia}
\setdefaultlanguage[spelling=new]{german}

\begin{document}
\begin{ganttchart}
    [
    today=2013-12-31, today label={},   % Jahreswechsel
    x unit=1mm,                         % timeslot breite
    milestone left shift=-0.7,
    milestone right shift=1.7,
    %inline,milestone inline label node/.append style={left=5mm},
    time slot format=isodate]           % Datumsformat
    {2013-09-22}{2014-01-19}

    \gantttitlecalendar{year, month=shortname}\\

    \ganttmilestone{Auftrag einreichen}{2013-10-28}\\
    \ganttbar{Bar}{2013-10-15}{2014-01-05}
\end{ganttchart}

\end{document}
Falls das mit pgfgantt nicht geht, könnte ich ja selbst noch per tikz was reinzeichnen. Aber wie komme ich an den Node, des Meilenstein bzw. welchen Namen hat er oder wie kann ich ihn adressieren, wenn ich über ihm ein eigenen Text schreiben möchte?

Als ganz schlechten Workaround würde auch ein Zeilenumbruch im Label gehen. Aber das läuft nicht, \\, \newline und \linebreak werden ignoriert.

Nach oben