Pacote TiKz: Como substituir pontos por números no mapa de intervalo de domínio de função

Pacote TiKz: Como substituir pontos por números no mapa de intervalo de domínio de função

Estou tentando descobrir como substituir os pontos nos círculos por valores numéricos (1, 2, 3, etc)

Por favor, ajude-me a identificar quais linhas de código preciso editar para realizar essa substituição.

Desde já, obrigado!

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}

Responder1

Não sei quais números você gostaria de colocar onde, mas em geral, o conteúdo de um nó deve ser colocado entre chaves: \node[options] (name) at (0,0) {... };.

No seu exemplo, você pode querer colocar nos nós os números do \foreachloop que estão armazenados na macro \x. Como os nós são preenchidos em preto, o texto interno não seria visível. Portanto, sugiro que você altere a cor de preenchimento usando, por exemplo, fill=lightgray. Então, você pode escrever algo como: \node[fill=lightgray,circle,inner sep=2pt] (d\x) at (0,\x) {\x};.

Se você fizer isso para todos os três conjuntos de nós, descobrirá que o conteúdo dos nós tem comprimentos diferentes e, portanto, os círculos terão tamanhos diferentes. Por exemplo, alguns nós contêm apenas um dígito, enquanto outros contêm três e um ponto como separador decimal. Você provavelmente deseja adicionar a opção minimum width=2.5em(ou similar) aos nós para obter o mesmo tamanho para todos os nós.

Finalmente, como os nós podem se sobrepor devido ao aumento do tamanho, você pode definir a opção y=1.25cmpara o todo tikzpicture, aumentando as distâncias verticais enquanto mantém as distâncias horizontais como estão.

Somando tudo, você obteria:

\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}

insira a descrição da imagem aqui


Se você não quiser nenhum plano de fundo por trás dos números, provavelmente poderá excluir completamente as opções dos nós (além disso, você não precisaria definir y=1.25cm). Você pode querer adicionar um pouco de cor (semelhante à imagem fornecida em seu comentário), por isso adicionei um pouco de cor ao oval esquerdo e a uma das setas:

\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}

insira a descrição da imagem aqui

informação relacionada