
Ich versuche, ein Gantt-Diagramm in Beamer zu erstellen. Dabei habe ich folgendes Beispiel gefunden:
\documentclass{beamer}
\usepackage[utf8]{inputenc}
\usepackage{pgfgantt}
\title{Sample title}
\author{Anonymous}
\institute{Overleaf}
\date{2019}
\begin{document}
\frame{\titlepage}
\begin{frame}{Gant-Chart}
\begin{ganttchart}[vgrid, hgrid,
bar/.append style={fill=blue!80},
milestone/.append style={fill=green}]{1}{15}
\gantttitle{2019}{15} \\
\gantttitlelist{1,...,15}{1} \\
\ganttbar{Task 1}{1}{2} \\
\ganttmilestone{Milestone}{7} \ganttnewline
\ganttbar{Final Task}{8}{12}
\end{ganttchart}
\end{frame}
\end{document}
Jetzt möchte ich es leicht ändern. Die erste Zeile zeigt das Jahr. Die zweite Zeile soll die Monate zeigen. Und die dritte Zeile zeigt die Anzahl der Wochen, die ich für die Aufgabe eingeplant habe. Außerdem möchte ich keine Pfeile sehen, sondern nur die Rechtecke. Gibt es eine Möglichkeit, ein Raster hinzuzufügen? Im Grunde möchte ich, dass alles wie in einer Excel-Tabelle aussieht: Raster und dann die Rechtecke einfärben, während der ich arbeite.
Hier ist ein Beispiel dessen, was ich gerne hätte:
Kann mir jemand zeigen, wie das geht?
Hier ist ein weiteres Beispiel, das dem, was ich will, ziemlich nahe kommt. Nur steht jetzt in der Wochenzeile immer „Woche 1“, „Woche 2“ und so weiter. Ich will nur die Nummer.
\begin{frame}
\begin{figure}[h!bt]
\begin{center}
\begin{ganttchart}[
vgrid={*{6}{draw=none}, dotted},
x unit=.08cm,
y unit title=.6cm,
y unit chart=.6cm,
time slot format=isodate,
time slot format/start date=2019-02-01]{2019-02-01}{2019-07-31}
\ganttset{bar height=.6}
\gantttitlecalendar{year, month=name, week} \\
\ganttbar[bar/.append style={fill=blue}]{Task 1}{2019-02-11}{2019-02-17}\\
\end{ganttchart}
\end{center}
\caption{Time Plan}
\end{figure}
\end{frame}
Antwort1
Ein Ansatzpunkt für Sie könnte sein:
\documentclass{standalone}
\usepackage[utf8]{inputenc}
\usepackage{pgfgantt}
\begin{document}
\begin{ganttchart}[
hgrid,
vgrid={*{6}{draw=none}, dotted},
x unit=0.125cm,
time slot format=isodate,
time slot unit=day,
calendar week text = {W\currentweek{}},
bar height = 1, %necessary to make it fit the height
bar top shift = -0.01, %to move it inside the grid space ;)
]{2019-01-01}{2019-06-30}
\gantttitlecalendar{year, month=name, week} \\
\ganttbar[bar/.append style={fill=red}]{Start}{2019-01-01}{2019-01-07}\\
\ganttbar[bar/.append style={fill=yellow}]{A}{2019-01-08}{2019-01-14}\\
\ganttbar[bar/.append style={fill=cyan}]{A}{2019-01-15}{2019-01-21}\\
\ganttbar[bar/.append style={fill=green}]{Finish phase 1}{2019-01-22}{2019-01-28}
\end{ganttchart}
\end{document}
Das Ergebnis ist:
Beachten Sie jedoch, dass Sie diese Gantt-Diagramme beliebig anpassen können. Schauen Sie einfach in die Dokumentation des pgfgantt-Pakets ;-)
.
PS:(Wie @Johannes_B
bereits erwähnt) stellen Sie bitte keine redundanten Fragen, wenn Sie auf eine Frage keine Antwort erhalten haben.
Um es anschließend in Ihren Beamer-Rahmen einzupassen, können Sie adjustbox
in Ihrer Präambel ein Paket verwenden und diesen Snippet wie folgt einfügen:
\frame{\titlepage}
\begin{frame}{Gant-Chart}
\begin{adjustbox}{max totalsize={\textwidth}{.7\textheight},center}
\begin{ganttchart}[
hgrid,
vgrid={*{6}{draw=none}, dotted},
x unit=0.125cm,
time slot format=isodate,
time slot unit=day,
calendar week text = {W\currentweek{}},
bar height = 1, %necessary to make it fit the height
bar top shift = -0.01, %to move it inside the grid space ;)
]{2019-01-01}{2019-06-30}
\gantttitlecalendar{year, month=name, week} \\
\ganttbar[bar/.append style={fill=red}]{Start}{2019-01-01}{2019-01-07}\\
\ganttbar[bar/.append style={fill=yellow}]{A}{2019-01-08}{2019-01-14}\\
\ganttbar[bar/.append style={fill=cyan}]{A}{2019-01-15}{2019-01-21}\\
\ganttbar[bar/.append style={fill=green}]{Finish phase 1}{2019-01-22}{2019-01-28}
\end{ganttchart}
\end{adjustbox}
\end{frame}
Notiz:Die Ausgabe ist dieselbe wie die vorherige, jetzt jedoch an die Textbreite angepasst.