pgfgantt: Wie füge ich an den Enden der Leiste Daten hinzu?

pgfgantt: Wie füge ich an den Enden der Leiste Daten hinzu?

Das Problem

Ich erstelle ein Gantt-Diagramm mit dem Paket pgffgantt. Ich möchte, dass die Daten der Aufgaben über den Balken angezeigt werden (im Bild unten in Orange).

Mein Ziel

Ich habe erfolglos versucht, Dinge auf der Grundlage verschiedener Fragen zu tun (1,2), das Datum war nicht an der richtigen Stelle, wenn zwei Balken auf der gleichen Linie wären, hätten sie sich überlappt ...

Weiß jemand, wie das geht, oder kann mir jemand einfach den richtigen Weg zeigen?

Minimales Arbeitsbeispiel

\documentclass[a4paper, 12pt]{article}
\usepackage[babel=true, kerning=true]{microtype} % Required by the package pgfgantt
\usepackage{pgfgantt}

\begin{document}
    \begin{ganttchart}[
            expand chart=\linewidth,
            time slot format=little-endian,  % Format of the date dd-mm-yyyy
            inline,
            vgrid={*6{draw=none}, *1{dotted}},  % Draw a line 1 out of 7 times, which is the same as framing the weeks
        ]{14-02-2022}{12-08-2022}
        \ganttset{calendar week text=\currentweek} % Overload the week text, display the week number (1, 2,, ...) instead of "Week <number>"
        \gantttitlecalendar{month=name, week}\\

        % Group 1
        \ganttset{
            bar/.append style={fill=lightblue},
            group/.append style={fill=darkblue},
        }
        \ganttgroup{Group 1}{14-02-2022}{25-06-2022}\\
        \ganttbar{Task 1}{14-04-2022}{28-05-2022}\\
        \ganttbar{Task 2}{18-02-2022}{18-04-2022} \ganttbar{Task 2 bis}{18-05-2022}{18-06-2022} \\
        % \ganttbar{Task 3}{14-02-2022}{28-03-2022}\\

    \end{ganttchart}
\end{document}

Antwort1

Der folgende Code erstellt zwei Befehle \myganttgroup, \myganttbardie zwei Originalbalken oder -gruppen Beschriftungen hinzufügen.

\PassOptionsToPackage{svgnames}{xcolor}
\documentclass[a4paper, 12pt]{article}
\usepackage[babel=true, kerning=true]{microtype} % Required by the package pgfgantt
\usepackage{pgfgantt}

\tikzset{
    date/.style={text=yellow!80!black, font=\small, anchor=south}
}
    
\newcommand{\myganttgroup}[4][]{%
\ganttgroup[#1, name=#2]{#2}{#3}{#4}
\node[date] at (#2.north west) {#3};
\node[date] at (#2.north east) {#4};
}

\newcommand{\myganttbar}[4][]{%
\ganttbar[#1, name=#2]{#2}{#3}{#4}
\node[date] at (#2.north west) {#3};
\node[date] at (#2.north east) {#4};
}


\begin{document}
    \begin{ganttchart}[
            expand chart=\linewidth,
            time slot format=little-endian,  % Format of the date dd-mm-yyyy
            inline,
            vgrid={*6{draw=none}, *1{dotted}},  % Draw a line 1 out of 7 times, which is the same as framing the weeks
        ]{14-02-2022}{12-08-2022}
        \ganttset{calendar week text=\currentweek} % Overload the week text, display the week number (1, 2,, ...) instead of "Week <number>"
        \gantttitlecalendar{month=name, week}\\

        % Group 1
        \ganttset{
            bar/.append style={fill=LightBlue},
            group/.append style={fill=DarkBlue},
        }
%        \ganttgroup{Group 1}{14-02-2022}{25-06-2022}\\
        \myganttgroup{Group 1}{14-02-2022}{25-06-2022}\\
        \myganttbar{Task 1}{14-04-2022}{28-05-2022}\\
        \myganttbar{Task 2}{18-02-2022}{18-04-2022} \myganttbar{Task 2 bis}{18-05-2022}{18-06-2022} \\
        % \ganttbar{Task 3}{14-02-2022}{28-03-2022}\\
%        \node[left] at (task1.north west) {A};
%        \node[right] at (task1.north east) {B};

    \end{ganttchart}
\end{document}

Bildbeschreibung hier eingeben

verwandte Informationen