Wie skaliert man eine Gantt-Diagramm?

Wie skaliert man eine Gantt-Diagramm?

Skizzieren:

Ich habe versucht, eineGantt-Diagrammum in eine Beamer-Präsentation zu passen.

Angenommen, ich habe ein Gantt-Diagramm, das größer ist als das Präsentationsrechteck:

 \begin{figure}
   \begin{gantt}{20}{20}
     \begin{ganttitle}
       \numtitle{2012}{1}{2016}{4}
     \end{ganttitle}

     %% lots of activities
     \ganttbar{1}{0}{3}
     ...
     ...
     \ganttbar{1}{0}{19}
     %% lots of activities
   \end{gantt}
 \end{figure}

Frage: Wie kann ich diese Figur skalieren, um sie in einem Beamer-Rahmen zu befestigen?

Beispiel: Wenn ich ein PNG-Bild verwenden würde, würde ich sicherlich Folgendes erstellen:

\begin{figure}
  \includegraphic[scale=0.5]{mypngpic.png}
\end{figure}

Aber in der Gantt-Umgebung gibt es keine(zumindest weiß ich das noch nicht)eine Möglichkeit zur Skalierung.

Antwort1

Da es ganttauf TikZ basiert, funktioniert es auch, die Skalierung extern zu erzwingen. Ich habe den Code nicht sorgfältig geprüft, aber vielleicht gibt es eine Möglichkeit, die Optionen direkt an die ganttUmgebung weiterzugeben. Es hat ein eigenes Schlüsselsystem, hat aber die Skalierungsoptionen nicht erkannt.

\documentclass{article}
\usepackage{gantt}
\begin{document}
\tikzset{every picture/.style={yscale=0.3,transform shape}}
   \begin{gantt}{5}{12}
     \begin{ganttitle}
       \numtitle{2012}{1}{2014}{4}
     \end{ganttitle}
     %% lots of activities
     \ganttbar{1}{0}{3}
     \ganttbar{1}{0}{10}
     %% lots of activities
   \end{gantt}

\tikzset{every picture/.style={yscale=1,transform shape}}
   \begin{gantt}{5}{12}
     \begin{ganttitle}
       \numtitle{2012}{1}{2014}{4}
     \end{ganttitle}
     %% lots of activities
     \ganttbar{1}{0}{3}
     \ganttbar{1}{0}{10}
     %% lots of activities
   \end{gantt}

\end{document}

Bildbeschreibung hier eingeben Beachten Sie auch, dass es ein weiteres auf TikZ basierendes Paket gibtpgfgantt.

Antwort2

Legen Sie den Inhalt \begin{gantt}{20}{20}......\end{gantt}in eine Datei, sagen wir myganttfig1.tex. Dann verwenden Sie in Ihrer Haupt-Tex-Datei \resizeboxFolgendes:

%=========================
\begin{figure}[htb]
\centering{
\resizebox{0.62\textwidth}{!}{\input{myganttfig1.tex}}}
\caption{your caption \label{fig:mygantt1}
\end{figure}
%===========================

Sie können die Breite 0.62\textwidthund Höhe !nach Bedarf ändern. Der Parameter {!}stellt sicher, dass die Höhe unter Beibehaltung des Seitenverhältnisses festgelegt wird.

Wie Gonzalo in seinen Kommentaren bemerkt, ist es in diesem speziellen Fall sinnvoller, sowohl Höhe als auch Breite zu verwenden.

verwandte Informationen