Placing text inside a loopnaming paths inside a TikZ foreach loopPlacing text inside graphs using...
Received a dinner invitation through my employer's email, is it ok to attend?
How can I truly shut down ssh server?
Are there any balance issues in allowing two half-feats to be taken without the Ability Score Increase instead of a feat?
Is "De qui parles-tu" (for example) as formal as it is in English, or is it normal for the French to casually say that
Why does this potentiometer in an op-amp feedback path cause noise when adjusted?
Employers keep telling me my college isn't good enough - is there any way to fix this?
Placing text inside a loop
How to know if blackberries are safe to eat
How are mathematicians paid to do research?
How quality assurance engineers test calculations?
How can I get a player to accept that they should stop trying to pull stunts without thinking them through first?
Diagonal arrows (using TikZ) should be aligned in parallel
Should disabled buttons give feedback when clicked?
Is anyone advocating the promotion of homosexuality in UK schools?
Graduate student with abysmal English writing skills, how to help
Why would non-kinetic weapons be used for orbital bombardment?
Is there a strong legal guarantee that the U.S. can give to another country that it won't attack them?
Are there any sports for which the world's best player is female?
What were the main German words for a prostitute before 1800?
Misspelling my name on my mathematical publications
When an electron changes its spin, or any other intrinsic property, is it still the same electron?
What does the phrase "head down the rat's hole" mean here?
How were Martello towers supposed to work?
Single word for "refusing to move to next activity unless present one is completed."
Placing text inside a loop
naming paths inside a TikZ foreach loopPlacing text inside graphs using pgfplotTikZ/ERD: node (=Entity) label on the insideRedefine object inside a loopAdjusting edge alignment and positioning of fitted nodeUsing newcommands inside tikzpicture foreach loopTIKZ MODULO inside of FOR LOOPWrapfigure environment not placing figure within text (inside proof environment)Automatically find which nodes are closest, to aid drawing lines within a TikZ matrixControlling space inside nodes in foreach loop
.everyoneloves__top-leaderboard:empty,.everyoneloves__mid-leaderboard:empty,.everyoneloves__bot-mid-leaderboard:empty{ margin-bottom:0;
}
How can I add the same text that appear inside the area surrounded by the arrow above the phrase "Item-based", meaning, {$mathrm{sim}(u_{a},u_{j})$} but inside the area surrounded by the arrow next to the text "User-based similarity measure"?
CODE
documentclass[tikz,border=3.14mm]{standalone}
usetikzlibrary{matrix}
begin{document}
begin{tikzpicture}[font=footnotesize,b/.style={text=blue,font=bfseries}]
matrix(m)[matrix of nodes,
nodes={minimum size=5ex,anchor=center,draw},
row 1/.style={nodes={draw=none,fill=none}},
column 5/.style={nodes={fill=gray!30}},
column 6/.style={nodes={fill=gray!30}},
row 4/.style={nodes={fill=orange!30}},
column 1/.style={nodes={draw=none,fill=none}},
row sep=-pgflinewidth,
column sep={-pgflinewidth},
nodes in empty cells,
]{
& $i_{1}$& $i_{2}$ & $i_{3}$ & dots &$ i_{k}$ & $ i_{a}$ & dots &$ i_{n}$ \
$u_{1}$ & & 5 & & 2 & 4 & & & \
$u_{2}$ & & 5 & 4 & & 5 & & 4 &\
|[fill=none]|dots & & & & & & 1 & 1 & 2 \
$u_{j}$ & 3 & & |[b]| ? & & |[b]| ? & 3 & & 0 \
$u_{a}$ & & |[b]| ? & 2 & & 4 & &|[b]| ? & \
dots& & |[b]| ? & 2 & & 4 & &|[b]| ? & \
$u_{6}$ & & |[b]| ? & 2 & & 4 & &|[b]| ? & \
};
draw[-latex](m-6-9.east)--+(1,0)node[above right]{User-based similarity measure}|-(m-5-9.east);
node[left]at(m-4-1.west){Active User};
draw[latex-] (m-1-6) -- ++ (-1,1) node[above left,align=left]
{Item preference score is\ predicted for active user};
draw[-latex]([xshift=-2pt]m-8-6.south east)--++(0,-1) -|
([xshift=2pt]m-8-5.south west)
node[pos=0.25,below]{Item-based}
node[pos=0.25,above,font=tiny]{$mathrm{sim}(u_{a},u_{j})$};
end{tikzpicture}
end{document}

tikz-pgf
add a comment |
How can I add the same text that appear inside the area surrounded by the arrow above the phrase "Item-based", meaning, {$mathrm{sim}(u_{a},u_{j})$} but inside the area surrounded by the arrow next to the text "User-based similarity measure"?
CODE
documentclass[tikz,border=3.14mm]{standalone}
usetikzlibrary{matrix}
begin{document}
begin{tikzpicture}[font=footnotesize,b/.style={text=blue,font=bfseries}]
matrix(m)[matrix of nodes,
nodes={minimum size=5ex,anchor=center,draw},
row 1/.style={nodes={draw=none,fill=none}},
column 5/.style={nodes={fill=gray!30}},
column 6/.style={nodes={fill=gray!30}},
row 4/.style={nodes={fill=orange!30}},
column 1/.style={nodes={draw=none,fill=none}},
row sep=-pgflinewidth,
column sep={-pgflinewidth},
nodes in empty cells,
]{
& $i_{1}$& $i_{2}$ & $i_{3}$ & dots &$ i_{k}$ & $ i_{a}$ & dots &$ i_{n}$ \
$u_{1}$ & & 5 & & 2 & 4 & & & \
$u_{2}$ & & 5 & 4 & & 5 & & 4 &\
|[fill=none]|dots & & & & & & 1 & 1 & 2 \
$u_{j}$ & 3 & & |[b]| ? & & |[b]| ? & 3 & & 0 \
$u_{a}$ & & |[b]| ? & 2 & & 4 & &|[b]| ? & \
dots& & |[b]| ? & 2 & & 4 & &|[b]| ? & \
$u_{6}$ & & |[b]| ? & 2 & & 4 & &|[b]| ? & \
};
draw[-latex](m-6-9.east)--+(1,0)node[above right]{User-based similarity measure}|-(m-5-9.east);
node[left]at(m-4-1.west){Active User};
draw[latex-] (m-1-6) -- ++ (-1,1) node[above left,align=left]
{Item preference score is\ predicted for active user};
draw[-latex]([xshift=-2pt]m-8-6.south east)--++(0,-1) -|
([xshift=2pt]m-8-5.south west)
node[pos=0.25,below]{Item-based}
node[pos=0.25,above,font=tiny]{$mathrm{sim}(u_{a},u_{j})$};
end{tikzpicture}
end{document}

tikz-pgf
add a comment |
How can I add the same text that appear inside the area surrounded by the arrow above the phrase "Item-based", meaning, {$mathrm{sim}(u_{a},u_{j})$} but inside the area surrounded by the arrow next to the text "User-based similarity measure"?
CODE
documentclass[tikz,border=3.14mm]{standalone}
usetikzlibrary{matrix}
begin{document}
begin{tikzpicture}[font=footnotesize,b/.style={text=blue,font=bfseries}]
matrix(m)[matrix of nodes,
nodes={minimum size=5ex,anchor=center,draw},
row 1/.style={nodes={draw=none,fill=none}},
column 5/.style={nodes={fill=gray!30}},
column 6/.style={nodes={fill=gray!30}},
row 4/.style={nodes={fill=orange!30}},
column 1/.style={nodes={draw=none,fill=none}},
row sep=-pgflinewidth,
column sep={-pgflinewidth},
nodes in empty cells,
]{
& $i_{1}$& $i_{2}$ & $i_{3}$ & dots &$ i_{k}$ & $ i_{a}$ & dots &$ i_{n}$ \
$u_{1}$ & & 5 & & 2 & 4 & & & \
$u_{2}$ & & 5 & 4 & & 5 & & 4 &\
|[fill=none]|dots & & & & & & 1 & 1 & 2 \
$u_{j}$ & 3 & & |[b]| ? & & |[b]| ? & 3 & & 0 \
$u_{a}$ & & |[b]| ? & 2 & & 4 & &|[b]| ? & \
dots& & |[b]| ? & 2 & & 4 & &|[b]| ? & \
$u_{6}$ & & |[b]| ? & 2 & & 4 & &|[b]| ? & \
};
draw[-latex](m-6-9.east)--+(1,0)node[above right]{User-based similarity measure}|-(m-5-9.east);
node[left]at(m-4-1.west){Active User};
draw[latex-] (m-1-6) -- ++ (-1,1) node[above left,align=left]
{Item preference score is\ predicted for active user};
draw[-latex]([xshift=-2pt]m-8-6.south east)--++(0,-1) -|
([xshift=2pt]m-8-5.south west)
node[pos=0.25,below]{Item-based}
node[pos=0.25,above,font=tiny]{$mathrm{sim}(u_{a},u_{j})$};
end{tikzpicture}
end{document}

tikz-pgf
How can I add the same text that appear inside the area surrounded by the arrow above the phrase "Item-based", meaning, {$mathrm{sim}(u_{a},u_{j})$} but inside the area surrounded by the arrow next to the text "User-based similarity measure"?
CODE
documentclass[tikz,border=3.14mm]{standalone}
usetikzlibrary{matrix}
begin{document}
begin{tikzpicture}[font=footnotesize,b/.style={text=blue,font=bfseries}]
matrix(m)[matrix of nodes,
nodes={minimum size=5ex,anchor=center,draw},
row 1/.style={nodes={draw=none,fill=none}},
column 5/.style={nodes={fill=gray!30}},
column 6/.style={nodes={fill=gray!30}},
row 4/.style={nodes={fill=orange!30}},
column 1/.style={nodes={draw=none,fill=none}},
row sep=-pgflinewidth,
column sep={-pgflinewidth},
nodes in empty cells,
]{
& $i_{1}$& $i_{2}$ & $i_{3}$ & dots &$ i_{k}$ & $ i_{a}$ & dots &$ i_{n}$ \
$u_{1}$ & & 5 & & 2 & 4 & & & \
$u_{2}$ & & 5 & 4 & & 5 & & 4 &\
|[fill=none]|dots & & & & & & 1 & 1 & 2 \
$u_{j}$ & 3 & & |[b]| ? & & |[b]| ? & 3 & & 0 \
$u_{a}$ & & |[b]| ? & 2 & & 4 & &|[b]| ? & \
dots& & |[b]| ? & 2 & & 4 & &|[b]| ? & \
$u_{6}$ & & |[b]| ? & 2 & & 4 & &|[b]| ? & \
};
draw[-latex](m-6-9.east)--+(1,0)node[above right]{User-based similarity measure}|-(m-5-9.east);
node[left]at(m-4-1.west){Active User};
draw[latex-] (m-1-6) -- ++ (-1,1) node[above left,align=left]
{Item preference score is\ predicted for active user};
draw[-latex]([xshift=-2pt]m-8-6.south east)--++(0,-1) -|
([xshift=2pt]m-8-5.south west)
node[pos=0.25,below]{Item-based}
node[pos=0.25,above,font=tiny]{$mathrm{sim}(u_{a},u_{j})$};
end{tikzpicture}
end{document}

tikz-pgf
tikz-pgf
asked 9 hours ago
NaveganTeXNaveganTeX
1,1091 silver badge11 bronze badges
1,1091 silver badge11 bronze badges
add a comment |
add a comment |
2 Answers
2
active
oldest
votes
Since the loop is built with the syntax |-, it is sufficient to use the specific placement of nodes on such paths. To know:
- 0.5 is the right angle
- .25 is half of the first segment.
For aesthetic reasons, I have divided the text into two lines.
draw[-latex,align=center](m-6-9.east)--+(1.8,0)node[above right]{User-based\ similarity measure}|-(m-5-9.east)node[pos=.25,left]{$mathrm{sim}(u_{a},u_{j})$};

documentclass[tikz,border=3.14mm]{standalone}
usetikzlibrary{matrix}
begin{document}
begin{tikzpicture}[font=footnotesize,b/.style={text=blue,font=bfseries}]
matrix(m)[matrix of nodes,
nodes={minimum size=5ex,anchor=center,draw},
row 1/.style={nodes={draw=none,fill=none}},
column 5/.style={nodes={fill=gray!30}},
column 6/.style={nodes={fill=gray!30}},
row 4/.style={nodes={fill=orange!30}},
column 1/.style={nodes={draw=none,fill=none}},
row sep=-pgflinewidth,
column sep={-pgflinewidth},
nodes in empty cells,
]{
& $i_{1}$& $i_{2}$ & $i_{3}$ & dots &$ i_{k}$ & $ i_{a}$ & dots &$ i_{n}$ \
$u_{1}$ & & 5 & & 2 & 4 & & & \
$u_{2}$ & & 5 & 4 & & 5 & & 4 &\
|[fill=none]|dots & & & & & & 1 & 1 & 2 \
$u_{j}$ & 3 & & |[b]| ? & & |[b]| ? & 3 & & 0 \
$u_{a}$ & & |[b]| ? & 2 & & 4 & &|[b]| ? & \
dots& & |[b]| ? & 2 & & 4 & &|[b]| ? & \
$u_{6}$ & & |[b]| ? & 2 & & 4 & &|[b]| ? & \
};
draw[-latex,align=center](m-6-9.east)--+(1.8,0)node[above right]{User-based\ similarity measure}|-(m-5-9.east)node[pos=.25,left]{$mathrm{sim}(u_{a},u_{j})$};
node[left]at(m-4-1.west){Active User};
draw[latex-] (m-1-6) -- ++ (-1,1) node[above left,align=left]
{Item preference score is\ predicted for active user};
draw[-latex]([xshift=-2pt]m-8-6.south east)--++(0,-1) -|
([xshift=2pt]m-8-5.south west)
node[pos=0.25,below]{Item-based}
node[pos=0.25,above,font=tiny]{$mathrm{sim}(u_{a},u_{j})$};
end{tikzpicture}
end{document}
add a comment |
This is more or less repetition from the answer that yielded your code. It is designed in such a way that, if you add more text, the arrow loop will adjust its size.
documentclass[tikz,border=3.14mm]{standalone}
usetikzlibrary{matrix}
begin{document}
begin{tikzpicture}[font=footnotesize,b/.style={text=blue,font=bfseries}]
matrix(m)[matrix of nodes,
nodes={minimum size=5ex,anchor=center,draw},
row 1/.style={nodes={draw=none,fill=none}},
column 5/.style={nodes={fill=gray!30}},
column 6/.style={nodes={fill=gray!30}},
row 4/.style={nodes={fill=orange!30}},
column 1/.style={nodes={draw=none,fill=none}},
row sep=-pgflinewidth,
column sep={-pgflinewidth},
nodes in empty cells,
]{
& $i_{1}$& $i_{2}$ & $i_{3}$ & dots &$ i_{k}$ & $ i_{a}$ & dots &$ i_{n}$ \
$u_{1}$ & & 5 & & 2 & 4 & & & \
$u_{2}$ & & 5 & 4 & & 5 & & 4 &\
|[fill=none]|dots & & & & & & 1 & 1 & 2 \
$u_{j}$ & 3 & & |[b]| ? & & |[b]| ? & 3 & & 0 \
$u_{a}$ & & |[b]| ? & 2 & & 4 & &|[b]| ? & \
dots& & |[b]| ? & 2 & & 4 & &|[b]| ? & \
$u_{6}$ & & |[b]| ? & 2 & & 4 & &|[b]| ? & \
};
node[left]at(m-4-1.west){Active User};
path (m-6-9.south east) -- (m-5-9.north east)
node[midway,right,font=tiny] (ub) {$mathrm{sim}(u_{a},u_{j})$};
draw[-latex](m-6-9.east) --
([xshift=2pt]ub.east|-m-6-9.east) |-(m-5-9.east)
node[pos=0.25,right,align=left] {User-based si-\milarity measure};
;
draw[latex-] (m-1-6.north) -- ++ (-1,1) node[above left,align=left]
{Item preference score is\ predicted for active user};
draw[-latex]([xshift=-2pt]m-8-6.south east)--++(0,-1) -|
([xshift=2pt]m-8-5.south west)
node[pos=0.25,below]{Item-based}
node[pos=0.25,above,font=tiny]{$mathrm{sim}(u_{a},u_{j})$};
end{tikzpicture}
end{document}

To see this automatic adjustment, try
path (m-6-9.south east) -- (m-5-9.north east)
node[midway,right] (ub) {$mathrm{sim}(u_{a},u_{j})$};
to get

There is no hardcoded distance.
add a comment |
Your Answer
StackExchange.ready(function() {
var channelOptions = {
tags: "".split(" "),
id: "85"
};
initTagRenderer("".split(" "), "".split(" "), channelOptions);
StackExchange.using("externalEditor", function() {
// Have to fire editor after snippets, if snippets enabled
if (StackExchange.settings.snippets.snippetsEnabled) {
StackExchange.using("snippets", function() {
createEditor();
});
}
else {
createEditor();
}
});
function createEditor() {
StackExchange.prepareEditor({
heartbeatType: 'answer',
autoActivateHeartbeat: false,
convertImagesToLinks: false,
noModals: true,
showLowRepImageUploadWarning: true,
reputationToPostImages: null,
bindNavPrevention: true,
postfix: "",
imageUploader: {
brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
allowUrls: true
},
onDemand: true,
discardSelector: ".discard-answer"
,immediatelyShowMarkdownHelp:true
});
}
});
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2ftex.stackexchange.com%2fquestions%2f499275%2fplacing-text-inside-a-loop%23new-answer', 'question_page');
}
);
Post as a guest
Required, but never shown
2 Answers
2
active
oldest
votes
2 Answers
2
active
oldest
votes
active
oldest
votes
active
oldest
votes
Since the loop is built with the syntax |-, it is sufficient to use the specific placement of nodes on such paths. To know:
- 0.5 is the right angle
- .25 is half of the first segment.
For aesthetic reasons, I have divided the text into two lines.
draw[-latex,align=center](m-6-9.east)--+(1.8,0)node[above right]{User-based\ similarity measure}|-(m-5-9.east)node[pos=.25,left]{$mathrm{sim}(u_{a},u_{j})$};

documentclass[tikz,border=3.14mm]{standalone}
usetikzlibrary{matrix}
begin{document}
begin{tikzpicture}[font=footnotesize,b/.style={text=blue,font=bfseries}]
matrix(m)[matrix of nodes,
nodes={minimum size=5ex,anchor=center,draw},
row 1/.style={nodes={draw=none,fill=none}},
column 5/.style={nodes={fill=gray!30}},
column 6/.style={nodes={fill=gray!30}},
row 4/.style={nodes={fill=orange!30}},
column 1/.style={nodes={draw=none,fill=none}},
row sep=-pgflinewidth,
column sep={-pgflinewidth},
nodes in empty cells,
]{
& $i_{1}$& $i_{2}$ & $i_{3}$ & dots &$ i_{k}$ & $ i_{a}$ & dots &$ i_{n}$ \
$u_{1}$ & & 5 & & 2 & 4 & & & \
$u_{2}$ & & 5 & 4 & & 5 & & 4 &\
|[fill=none]|dots & & & & & & 1 & 1 & 2 \
$u_{j}$ & 3 & & |[b]| ? & & |[b]| ? & 3 & & 0 \
$u_{a}$ & & |[b]| ? & 2 & & 4 & &|[b]| ? & \
dots& & |[b]| ? & 2 & & 4 & &|[b]| ? & \
$u_{6}$ & & |[b]| ? & 2 & & 4 & &|[b]| ? & \
};
draw[-latex,align=center](m-6-9.east)--+(1.8,0)node[above right]{User-based\ similarity measure}|-(m-5-9.east)node[pos=.25,left]{$mathrm{sim}(u_{a},u_{j})$};
node[left]at(m-4-1.west){Active User};
draw[latex-] (m-1-6) -- ++ (-1,1) node[above left,align=left]
{Item preference score is\ predicted for active user};
draw[-latex]([xshift=-2pt]m-8-6.south east)--++(0,-1) -|
([xshift=2pt]m-8-5.south west)
node[pos=0.25,below]{Item-based}
node[pos=0.25,above,font=tiny]{$mathrm{sim}(u_{a},u_{j})$};
end{tikzpicture}
end{document}
add a comment |
Since the loop is built with the syntax |-, it is sufficient to use the specific placement of nodes on such paths. To know:
- 0.5 is the right angle
- .25 is half of the first segment.
For aesthetic reasons, I have divided the text into two lines.
draw[-latex,align=center](m-6-9.east)--+(1.8,0)node[above right]{User-based\ similarity measure}|-(m-5-9.east)node[pos=.25,left]{$mathrm{sim}(u_{a},u_{j})$};

documentclass[tikz,border=3.14mm]{standalone}
usetikzlibrary{matrix}
begin{document}
begin{tikzpicture}[font=footnotesize,b/.style={text=blue,font=bfseries}]
matrix(m)[matrix of nodes,
nodes={minimum size=5ex,anchor=center,draw},
row 1/.style={nodes={draw=none,fill=none}},
column 5/.style={nodes={fill=gray!30}},
column 6/.style={nodes={fill=gray!30}},
row 4/.style={nodes={fill=orange!30}},
column 1/.style={nodes={draw=none,fill=none}},
row sep=-pgflinewidth,
column sep={-pgflinewidth},
nodes in empty cells,
]{
& $i_{1}$& $i_{2}$ & $i_{3}$ & dots &$ i_{k}$ & $ i_{a}$ & dots &$ i_{n}$ \
$u_{1}$ & & 5 & & 2 & 4 & & & \
$u_{2}$ & & 5 & 4 & & 5 & & 4 &\
|[fill=none]|dots & & & & & & 1 & 1 & 2 \
$u_{j}$ & 3 & & |[b]| ? & & |[b]| ? & 3 & & 0 \
$u_{a}$ & & |[b]| ? & 2 & & 4 & &|[b]| ? & \
dots& & |[b]| ? & 2 & & 4 & &|[b]| ? & \
$u_{6}$ & & |[b]| ? & 2 & & 4 & &|[b]| ? & \
};
draw[-latex,align=center](m-6-9.east)--+(1.8,0)node[above right]{User-based\ similarity measure}|-(m-5-9.east)node[pos=.25,left]{$mathrm{sim}(u_{a},u_{j})$};
node[left]at(m-4-1.west){Active User};
draw[latex-] (m-1-6) -- ++ (-1,1) node[above left,align=left]
{Item preference score is\ predicted for active user};
draw[-latex]([xshift=-2pt]m-8-6.south east)--++(0,-1) -|
([xshift=2pt]m-8-5.south west)
node[pos=0.25,below]{Item-based}
node[pos=0.25,above,font=tiny]{$mathrm{sim}(u_{a},u_{j})$};
end{tikzpicture}
end{document}
add a comment |
Since the loop is built with the syntax |-, it is sufficient to use the specific placement of nodes on such paths. To know:
- 0.5 is the right angle
- .25 is half of the first segment.
For aesthetic reasons, I have divided the text into two lines.
draw[-latex,align=center](m-6-9.east)--+(1.8,0)node[above right]{User-based\ similarity measure}|-(m-5-9.east)node[pos=.25,left]{$mathrm{sim}(u_{a},u_{j})$};

documentclass[tikz,border=3.14mm]{standalone}
usetikzlibrary{matrix}
begin{document}
begin{tikzpicture}[font=footnotesize,b/.style={text=blue,font=bfseries}]
matrix(m)[matrix of nodes,
nodes={minimum size=5ex,anchor=center,draw},
row 1/.style={nodes={draw=none,fill=none}},
column 5/.style={nodes={fill=gray!30}},
column 6/.style={nodes={fill=gray!30}},
row 4/.style={nodes={fill=orange!30}},
column 1/.style={nodes={draw=none,fill=none}},
row sep=-pgflinewidth,
column sep={-pgflinewidth},
nodes in empty cells,
]{
& $i_{1}$& $i_{2}$ & $i_{3}$ & dots &$ i_{k}$ & $ i_{a}$ & dots &$ i_{n}$ \
$u_{1}$ & & 5 & & 2 & 4 & & & \
$u_{2}$ & & 5 & 4 & & 5 & & 4 &\
|[fill=none]|dots & & & & & & 1 & 1 & 2 \
$u_{j}$ & 3 & & |[b]| ? & & |[b]| ? & 3 & & 0 \
$u_{a}$ & & |[b]| ? & 2 & & 4 & &|[b]| ? & \
dots& & |[b]| ? & 2 & & 4 & &|[b]| ? & \
$u_{6}$ & & |[b]| ? & 2 & & 4 & &|[b]| ? & \
};
draw[-latex,align=center](m-6-9.east)--+(1.8,0)node[above right]{User-based\ similarity measure}|-(m-5-9.east)node[pos=.25,left]{$mathrm{sim}(u_{a},u_{j})$};
node[left]at(m-4-1.west){Active User};
draw[latex-] (m-1-6) -- ++ (-1,1) node[above left,align=left]
{Item preference score is\ predicted for active user};
draw[-latex]([xshift=-2pt]m-8-6.south east)--++(0,-1) -|
([xshift=2pt]m-8-5.south west)
node[pos=0.25,below]{Item-based}
node[pos=0.25,above,font=tiny]{$mathrm{sim}(u_{a},u_{j})$};
end{tikzpicture}
end{document}
Since the loop is built with the syntax |-, it is sufficient to use the specific placement of nodes on such paths. To know:
- 0.5 is the right angle
- .25 is half of the first segment.
For aesthetic reasons, I have divided the text into two lines.
draw[-latex,align=center](m-6-9.east)--+(1.8,0)node[above right]{User-based\ similarity measure}|-(m-5-9.east)node[pos=.25,left]{$mathrm{sim}(u_{a},u_{j})$};

documentclass[tikz,border=3.14mm]{standalone}
usetikzlibrary{matrix}
begin{document}
begin{tikzpicture}[font=footnotesize,b/.style={text=blue,font=bfseries}]
matrix(m)[matrix of nodes,
nodes={minimum size=5ex,anchor=center,draw},
row 1/.style={nodes={draw=none,fill=none}},
column 5/.style={nodes={fill=gray!30}},
column 6/.style={nodes={fill=gray!30}},
row 4/.style={nodes={fill=orange!30}},
column 1/.style={nodes={draw=none,fill=none}},
row sep=-pgflinewidth,
column sep={-pgflinewidth},
nodes in empty cells,
]{
& $i_{1}$& $i_{2}$ & $i_{3}$ & dots &$ i_{k}$ & $ i_{a}$ & dots &$ i_{n}$ \
$u_{1}$ & & 5 & & 2 & 4 & & & \
$u_{2}$ & & 5 & 4 & & 5 & & 4 &\
|[fill=none]|dots & & & & & & 1 & 1 & 2 \
$u_{j}$ & 3 & & |[b]| ? & & |[b]| ? & 3 & & 0 \
$u_{a}$ & & |[b]| ? & 2 & & 4 & &|[b]| ? & \
dots& & |[b]| ? & 2 & & 4 & &|[b]| ? & \
$u_{6}$ & & |[b]| ? & 2 & & 4 & &|[b]| ? & \
};
draw[-latex,align=center](m-6-9.east)--+(1.8,0)node[above right]{User-based\ similarity measure}|-(m-5-9.east)node[pos=.25,left]{$mathrm{sim}(u_{a},u_{j})$};
node[left]at(m-4-1.west){Active User};
draw[latex-] (m-1-6) -- ++ (-1,1) node[above left,align=left]
{Item preference score is\ predicted for active user};
draw[-latex]([xshift=-2pt]m-8-6.south east)--++(0,-1) -|
([xshift=2pt]m-8-5.south west)
node[pos=0.25,below]{Item-based}
node[pos=0.25,above,font=tiny]{$mathrm{sim}(u_{a},u_{j})$};
end{tikzpicture}
end{document}
answered 8 hours ago
AndréCAndréC
10.9k1 gold badge15 silver badges53 bronze badges
10.9k1 gold badge15 silver badges53 bronze badges
add a comment |
add a comment |
This is more or less repetition from the answer that yielded your code. It is designed in such a way that, if you add more text, the arrow loop will adjust its size.
documentclass[tikz,border=3.14mm]{standalone}
usetikzlibrary{matrix}
begin{document}
begin{tikzpicture}[font=footnotesize,b/.style={text=blue,font=bfseries}]
matrix(m)[matrix of nodes,
nodes={minimum size=5ex,anchor=center,draw},
row 1/.style={nodes={draw=none,fill=none}},
column 5/.style={nodes={fill=gray!30}},
column 6/.style={nodes={fill=gray!30}},
row 4/.style={nodes={fill=orange!30}},
column 1/.style={nodes={draw=none,fill=none}},
row sep=-pgflinewidth,
column sep={-pgflinewidth},
nodes in empty cells,
]{
& $i_{1}$& $i_{2}$ & $i_{3}$ & dots &$ i_{k}$ & $ i_{a}$ & dots &$ i_{n}$ \
$u_{1}$ & & 5 & & 2 & 4 & & & \
$u_{2}$ & & 5 & 4 & & 5 & & 4 &\
|[fill=none]|dots & & & & & & 1 & 1 & 2 \
$u_{j}$ & 3 & & |[b]| ? & & |[b]| ? & 3 & & 0 \
$u_{a}$ & & |[b]| ? & 2 & & 4 & &|[b]| ? & \
dots& & |[b]| ? & 2 & & 4 & &|[b]| ? & \
$u_{6}$ & & |[b]| ? & 2 & & 4 & &|[b]| ? & \
};
node[left]at(m-4-1.west){Active User};
path (m-6-9.south east) -- (m-5-9.north east)
node[midway,right,font=tiny] (ub) {$mathrm{sim}(u_{a},u_{j})$};
draw[-latex](m-6-9.east) --
([xshift=2pt]ub.east|-m-6-9.east) |-(m-5-9.east)
node[pos=0.25,right,align=left] {User-based si-\milarity measure};
;
draw[latex-] (m-1-6.north) -- ++ (-1,1) node[above left,align=left]
{Item preference score is\ predicted for active user};
draw[-latex]([xshift=-2pt]m-8-6.south east)--++(0,-1) -|
([xshift=2pt]m-8-5.south west)
node[pos=0.25,below]{Item-based}
node[pos=0.25,above,font=tiny]{$mathrm{sim}(u_{a},u_{j})$};
end{tikzpicture}
end{document}

To see this automatic adjustment, try
path (m-6-9.south east) -- (m-5-9.north east)
node[midway,right] (ub) {$mathrm{sim}(u_{a},u_{j})$};
to get

There is no hardcoded distance.
add a comment |
This is more or less repetition from the answer that yielded your code. It is designed in such a way that, if you add more text, the arrow loop will adjust its size.
documentclass[tikz,border=3.14mm]{standalone}
usetikzlibrary{matrix}
begin{document}
begin{tikzpicture}[font=footnotesize,b/.style={text=blue,font=bfseries}]
matrix(m)[matrix of nodes,
nodes={minimum size=5ex,anchor=center,draw},
row 1/.style={nodes={draw=none,fill=none}},
column 5/.style={nodes={fill=gray!30}},
column 6/.style={nodes={fill=gray!30}},
row 4/.style={nodes={fill=orange!30}},
column 1/.style={nodes={draw=none,fill=none}},
row sep=-pgflinewidth,
column sep={-pgflinewidth},
nodes in empty cells,
]{
& $i_{1}$& $i_{2}$ & $i_{3}$ & dots &$ i_{k}$ & $ i_{a}$ & dots &$ i_{n}$ \
$u_{1}$ & & 5 & & 2 & 4 & & & \
$u_{2}$ & & 5 & 4 & & 5 & & 4 &\
|[fill=none]|dots & & & & & & 1 & 1 & 2 \
$u_{j}$ & 3 & & |[b]| ? & & |[b]| ? & 3 & & 0 \
$u_{a}$ & & |[b]| ? & 2 & & 4 & &|[b]| ? & \
dots& & |[b]| ? & 2 & & 4 & &|[b]| ? & \
$u_{6}$ & & |[b]| ? & 2 & & 4 & &|[b]| ? & \
};
node[left]at(m-4-1.west){Active User};
path (m-6-9.south east) -- (m-5-9.north east)
node[midway,right,font=tiny] (ub) {$mathrm{sim}(u_{a},u_{j})$};
draw[-latex](m-6-9.east) --
([xshift=2pt]ub.east|-m-6-9.east) |-(m-5-9.east)
node[pos=0.25,right,align=left] {User-based si-\milarity measure};
;
draw[latex-] (m-1-6.north) -- ++ (-1,1) node[above left,align=left]
{Item preference score is\ predicted for active user};
draw[-latex]([xshift=-2pt]m-8-6.south east)--++(0,-1) -|
([xshift=2pt]m-8-5.south west)
node[pos=0.25,below]{Item-based}
node[pos=0.25,above,font=tiny]{$mathrm{sim}(u_{a},u_{j})$};
end{tikzpicture}
end{document}

To see this automatic adjustment, try
path (m-6-9.south east) -- (m-5-9.north east)
node[midway,right] (ub) {$mathrm{sim}(u_{a},u_{j})$};
to get

There is no hardcoded distance.
add a comment |
This is more or less repetition from the answer that yielded your code. It is designed in such a way that, if you add more text, the arrow loop will adjust its size.
documentclass[tikz,border=3.14mm]{standalone}
usetikzlibrary{matrix}
begin{document}
begin{tikzpicture}[font=footnotesize,b/.style={text=blue,font=bfseries}]
matrix(m)[matrix of nodes,
nodes={minimum size=5ex,anchor=center,draw},
row 1/.style={nodes={draw=none,fill=none}},
column 5/.style={nodes={fill=gray!30}},
column 6/.style={nodes={fill=gray!30}},
row 4/.style={nodes={fill=orange!30}},
column 1/.style={nodes={draw=none,fill=none}},
row sep=-pgflinewidth,
column sep={-pgflinewidth},
nodes in empty cells,
]{
& $i_{1}$& $i_{2}$ & $i_{3}$ & dots &$ i_{k}$ & $ i_{a}$ & dots &$ i_{n}$ \
$u_{1}$ & & 5 & & 2 & 4 & & & \
$u_{2}$ & & 5 & 4 & & 5 & & 4 &\
|[fill=none]|dots & & & & & & 1 & 1 & 2 \
$u_{j}$ & 3 & & |[b]| ? & & |[b]| ? & 3 & & 0 \
$u_{a}$ & & |[b]| ? & 2 & & 4 & &|[b]| ? & \
dots& & |[b]| ? & 2 & & 4 & &|[b]| ? & \
$u_{6}$ & & |[b]| ? & 2 & & 4 & &|[b]| ? & \
};
node[left]at(m-4-1.west){Active User};
path (m-6-9.south east) -- (m-5-9.north east)
node[midway,right,font=tiny] (ub) {$mathrm{sim}(u_{a},u_{j})$};
draw[-latex](m-6-9.east) --
([xshift=2pt]ub.east|-m-6-9.east) |-(m-5-9.east)
node[pos=0.25,right,align=left] {User-based si-\milarity measure};
;
draw[latex-] (m-1-6.north) -- ++ (-1,1) node[above left,align=left]
{Item preference score is\ predicted for active user};
draw[-latex]([xshift=-2pt]m-8-6.south east)--++(0,-1) -|
([xshift=2pt]m-8-5.south west)
node[pos=0.25,below]{Item-based}
node[pos=0.25,above,font=tiny]{$mathrm{sim}(u_{a},u_{j})$};
end{tikzpicture}
end{document}

To see this automatic adjustment, try
path (m-6-9.south east) -- (m-5-9.north east)
node[midway,right] (ub) {$mathrm{sim}(u_{a},u_{j})$};
to get

There is no hardcoded distance.
This is more or less repetition from the answer that yielded your code. It is designed in such a way that, if you add more text, the arrow loop will adjust its size.
documentclass[tikz,border=3.14mm]{standalone}
usetikzlibrary{matrix}
begin{document}
begin{tikzpicture}[font=footnotesize,b/.style={text=blue,font=bfseries}]
matrix(m)[matrix of nodes,
nodes={minimum size=5ex,anchor=center,draw},
row 1/.style={nodes={draw=none,fill=none}},
column 5/.style={nodes={fill=gray!30}},
column 6/.style={nodes={fill=gray!30}},
row 4/.style={nodes={fill=orange!30}},
column 1/.style={nodes={draw=none,fill=none}},
row sep=-pgflinewidth,
column sep={-pgflinewidth},
nodes in empty cells,
]{
& $i_{1}$& $i_{2}$ & $i_{3}$ & dots &$ i_{k}$ & $ i_{a}$ & dots &$ i_{n}$ \
$u_{1}$ & & 5 & & 2 & 4 & & & \
$u_{2}$ & & 5 & 4 & & 5 & & 4 &\
|[fill=none]|dots & & & & & & 1 & 1 & 2 \
$u_{j}$ & 3 & & |[b]| ? & & |[b]| ? & 3 & & 0 \
$u_{a}$ & & |[b]| ? & 2 & & 4 & &|[b]| ? & \
dots& & |[b]| ? & 2 & & 4 & &|[b]| ? & \
$u_{6}$ & & |[b]| ? & 2 & & 4 & &|[b]| ? & \
};
node[left]at(m-4-1.west){Active User};
path (m-6-9.south east) -- (m-5-9.north east)
node[midway,right,font=tiny] (ub) {$mathrm{sim}(u_{a},u_{j})$};
draw[-latex](m-6-9.east) --
([xshift=2pt]ub.east|-m-6-9.east) |-(m-5-9.east)
node[pos=0.25,right,align=left] {User-based si-\milarity measure};
;
draw[latex-] (m-1-6.north) -- ++ (-1,1) node[above left,align=left]
{Item preference score is\ predicted for active user};
draw[-latex]([xshift=-2pt]m-8-6.south east)--++(0,-1) -|
([xshift=2pt]m-8-5.south west)
node[pos=0.25,below]{Item-based}
node[pos=0.25,above,font=tiny]{$mathrm{sim}(u_{a},u_{j})$};
end{tikzpicture}
end{document}

To see this automatic adjustment, try
path (m-6-9.south east) -- (m-5-9.north east)
node[midway,right] (ub) {$mathrm{sim}(u_{a},u_{j})$};
to get

There is no hardcoded distance.
edited 7 hours ago
answered 8 hours ago
marmotmarmot
143k6 gold badges187 silver badges345 bronze badges
143k6 gold badges187 silver badges345 bronze badges
add a comment |
add a comment |
Thanks for contributing an answer to TeX - LaTeX Stack Exchange!
- Please be sure to answer the question. Provide details and share your research!
But avoid …
- Asking for help, clarification, or responding to other answers.
- Making statements based on opinion; back them up with references or personal experience.
To learn more, see our tips on writing great answers.
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2ftex.stackexchange.com%2fquestions%2f499275%2fplacing-text-inside-a-loop%23new-answer', 'question_page');
}
);
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown