Paquete TiKz: Cómo reemplazar puntos con números en el mapa de rango de dominio de función

Paquete TiKz: Cómo reemplazar puntos con números en el mapa de rango de dominio de función

Estoy tratando de descubrir cómo reemplazar los puntos en los círculos con valores numéricos (1, 2, 3, etc.)

Ayúdenme a identificar qué líneas de código necesito editar para realizar este reemplazo.

¡Gracias de antemano!

mwe (h/t pecusse)

\documentclass{standalone}
\usepackage{tikz}
\usetikzlibrary{shapes.geometric,fit}
\begin{document}
\begin{tikzpicture}
%put some nodes on the left
\foreach \x in {1,2,3}{
\node[fill,circle,inner sep=2pt] (d\x) at (0,\x) {};
}
\node[fit=(d1) (d2) (d3),ellipse,draw,minimum width=1cm] {}; 
%put some nodes on the center
\foreach \x[count=\xi] in {0.5,1.5,...,4}{
\node[fill,circle,inner sep=2pt] (r\xi) at (2,\x) {};
}
\node[fit=(r1) (r2) (r3) (r4),ellipse,draw,minimum width=1.5cm] {}; 
%put some nodes on the right
\foreach \x[count=\xi] in {0.75,1.5,...,3}{
\node[fill,circle,inner sep=2pt] (c\xi) at (4,\x) {};
}
\node[fit=(c1) (c2) (c3) (c4) ,ellipse,draw,minimum width=1.5cm] {};
\draw[-latex] (d1) -- (r2);
\draw[-latex] (d2) -- (r2);
\draw[-latex] (d3) -- (r4);
\draw[-latex] (r1) -- (c2);
\draw[-latex] (r2) -- (c3);
\draw[-latex] (d3) -- (r4);
\end{tikzpicture}
\end{document}

Respuesta1

No sé qué números le gustaría colocar y dónde, pero en general, el contenido de un nodo debe colocarse entre llaves: \node[options] (name) at (0,0) {... };.

En su ejemplo, es posible que desee colocar en los nodos los números del \foreachbucle que están almacenados en la macro \x. Dado que los nodos están rellenos de negro, el texto del interior no sería visible. Por lo tanto, le sugeriría que cambie el color de relleno usando, por ejemplo, fill=lightgray. Entonces, puedes escribir algo como: \node[fill=lightgray,circle,inner sep=2pt] (d\x) at (0,\x) {\x};.

Si hace esto para los tres conjuntos de nodos, descubrirá que el contenido de los nodos tiene diferente longitud y, por lo tanto, los círculos tendrán un tamaño diferente. Por ejemplo, algunos nodos sólo contienen un dígito, mientras que otros contienen tres y un punto como separador decimal. Probablemente quieras agregar la opción minimum width=2.5em(o similar) a los nodos para obtener el mismo tamaño para todos los nodos.

Finalmente, debido a que los nodos pueden superponerse debido al aumento de tamaño, puede configurar la opción y=1.25cmpara todo el conjunto tikzpictureque aumenta las distancias verticales mientras mantiene las distancias horizontales como estaban.

Tomando todo junto, obtendrías:

\documentclass{standalone}
\usepackage{tikz}
\usetikzlibrary{shapes.geometric,fit}

\begin{document}
\begin{tikzpicture}[y=1.25cm]
%put some nodes on the left
\foreach \x in {1,2,3}{
    \node[fill=lightgray,circle,inner sep=2pt,minimum width=2.5em] (d\x) at (0,\x) {\x};
}
\node[fit=(d1) (d2) (d3),ellipse,draw,minimum width=1cm] {}; 

%put some nodes on the center
\foreach \x[count=\xi] in {0.5,1.5,...,3.5}{
    \node[fill=lightgray,circle,inner sep=2pt,minimum width=2.5em] (r\xi) at (2,\x) {\x};
}
\node[fit=(r1) (r2) (r3) (r4),ellipse,draw,minimum width=1.5cm] {}; 

%put some nodes on the right
\foreach \x[count=\xi] in {0.75,1.5,...,3}{
    \node[fill=lightgray,circle,inner sep=2pt,minimum width=2.5em] (c\xi) at (4,\x) {\x};
}
\node[fit=(c1) (c2) (c3) (c4),ellipse,draw,minimum width=1.5cm] {};

\draw[-latex] (d1) -- (r2);
\draw[-latex] (d2) -- (r2);
\draw[-latex] (d3) -- (r4);
\draw[-latex] (r1) -- (c2);
\draw[-latex] (r2) -- (c3);
\draw[-latex] (d3) -- (r4);
\end{tikzpicture}
\end{document}

ingrese la descripción de la imagen aquí


Si no desea ningún trasfondo detrás de los números, probablemente pueda eliminar las opciones de los nodos por completo (además, no sería necesario configurar y=1.25cm). Es posible que desees agregar algo de color (similar a la imagen que proporcionaste en tu comentario), por eso agregué algo de color al óvalo izquierdo y a una de las flechas:

\documentclass[border=10pt]{standalone}
\usepackage{tikz}
\usetikzlibrary{shapes.geometric,fit}

\begin{document}
\begin{tikzpicture}
%put some nodes on the left
\foreach \x in {1,2,3}{
    \node (d\x) at (0,\x) {\x};
}
\node[fit=(d1) (d2) (d3),ellipse,draw=blue,minimum width=1cm] {}; 

%put some nodes on the center
\foreach \x[count=\xi] in {0.5,1.5,...,3.5}{
    \node (r\xi) at (2,\x) {\x};
}
\node[fit=(r1) (r2) (r3) (r4),ellipse,draw,minimum width=1.5cm] {}; 

%put some nodes on the right
\foreach \x[count=\xi] in {0.75,1.5,...,3}{
    \node (c\xi) at (4,\x) {\x};
}
\node[fit=(c1) (c2) (c3) (c4),ellipse,draw,minimum width=1.5cm] {};

\draw[-latex,orange] (d1) -- (r2);
\draw[-latex] (d2) -- (r2);
\draw[-latex] (d3) -- (r4);
\draw[-latex] (r1) -- (c2);
\draw[-latex] (r2) -- (c3);
\draw[-latex] (d3) -- (r4);
\end{tikzpicture}
\end{document}

ingrese la descripción de la imagen aquí

información relacionada