Diagrama con LaTeX (Smart Art)

Diagrama con LaTeX (Smart Art)

Me gustaría crear el siguiente diagrama: ingrese la descripción de la imagen aquí

Lo he probado con el siguiente código:

\begin{figure}
\begin{tikzpicture}[scale=1, transform shape]
%\draw[step=0.5cm,gray,very thin] (0,0) grid (12,6);
\node (i) at (1.5,2.5) {\small\textbf{Somoza's Dictatorship}};
\node (ii) at (4.5,5.5) {\small\textbf{Sandinista Revolution}};
\node (iii) at (8,2.5) {\small\textbf{Neoliberalism}};
\node (iv) at (11,5.5) {\small\textbf{Hybrid Model}};
\node (a) at (1.5,4) {1936-1979};
\node (b) at (4.5,2) {1979-1990};
\node (c) at (8,4) {1990-2007};
\node (d) at (11,2) {2007-Present};
\end{tikzpicture}
\caption{Political Context of Nicaragua.}
\end{figure} 

Sin embargo, no sé cómo puedo incluir el círculo, los colores y las viñetas. Mi resultado es algo como esto a continuación. ¿Hay alguna otra forma de hacerlo? Encontré mi código demasiado difícil y complicado.

ingrese la descripción de la imagen aquí

Saludos cordiales, Rony.

Respuesta1

Si configura text widthel nodo, puede usar una itemizelista estándar dentro del nodo. Para hacer círculos grandes, haga un nodo con, por ejemplo, draw,circle,line width=2.5mmen las opciones.

Posicionar estos nodos es más fácil si usa la positioningbiblioteca y coloca los nodos entre sí. Por ejemplo, si tiene \node (a) {...};, puede colocar el nodo bdebajo diciendo \node [below=of a] (b) {...};.

Aquí hay un ejemplo, agregué algunos comentarios en el código:

ingrese la descripción de la imagen aquí

\documentclass{beamer}
\usetheme{metropolis}
\usepackage{ragged2e}
\usepackage{tikz}
\usetikzlibrary{positioning}
\begin{document}
\begin{frame}[fragile]
\frametitle{Intro}
\begin{tikzpicture}[
 bigcircle/.style={ % style for the circles
    text width=1.6cm, % diameter
    align=center, % center align
    line width=2mm, % thickness of border
    draw, % draw the border
    circle, % shape
    font=\sffamily\footnotesize % font of the year
  },
 desc/.style 2 args={ % style for the list nodes
   % this style takes two mandatory arguments, as indicated by "2 args", so is used as
   % desc={first arg}{second arc}
   % the first arg is the color of the title/heading, the second is the title itself
  text width=2.5cm, % means the node will be kind of like a 4cm wide minipage, and if the
                  % text in the node becomes wider than that, it will wrap to the next line
  font=\sffamily\scriptsize\RaggedRight, % set the font in the list
  label={[#1,yshift=-1.5ex,font=\sffamily\footnotesize]above:#2} % add the title as a label
  },
 node distance=10mm and 2mm % vertical and horizontal separation of nodes, when positioned with e.g. above=of othernode
]

\node [bigcircle] (circ1) {1936--1979};
\node [desc={black}{Somoza's dictatorship},below=of circ1] (list1) {
\begin{itemize}
\setlength\itemsep{0pt} % reduce space between items in list
\item Point 1
\item Point 2
\item Point 3
\item Point 4
\end{itemize}
};

\node [bigcircle,red,right=of list1] (circ2) {1979--1990};
\node [desc={red}{Sandinista Revolution},above=of circ2] (list2) {
\begin{itemize}
\setlength\itemsep{0pt}
\item Point 1
\item Point 2
\item Point 3
\item Point 4
\end{itemize}
};

\node [bigcircle,blue!60!red,right=of list2] (circ3) {1990--2007};
\node [desc={blue!60!red}{Neoliberalism},below=of circ3] (list3) {
\begin{itemize}
\setlength\itemsep{0pt}
\item Point 1
\item Point 2
\item Point 3
\item Point 4
\end{itemize}
};

\node [bigcircle,gray,right=of list3] (circ4) {2007--Present};
\node [desc={gray}{Hybrid model},above=of circ4] (h) {
\begin{itemize}
\setlength\itemsep{0pt}
\item Point 1
\item Point 2
\item Point 3
\item Point 4
\end{itemize}
};

% draw the line between circles
\draw [dashed,black!80] (circ1) -- (circ2) -- (circ3) -- (circ4);
\end{tikzpicture} 
\end{frame}
\end{document}

Respuesta2

Siguiendo el consejo de @TorbjørnT:

Porque estoy haciendo un documento proyector. Añado \begin{frame}[fragile]{Introduction: Political Context Of Nicaragua}. Además modifiqué la escala scale=0.9, transform shape. y obtuve esto: ingrese la descripción de la imagen aquí

Con font=\sffamily\scriptsize\RaggedRight: ingrese la descripción de la imagen aquí

información relacionada