node command while defining a coordinate in TikZ
This question is related to Strange behavior in TikZ draw command but is not the same.
While working with coordinates
and nodes
in TikZ, I was expecting that:
coordinate (x) at (4,0) node[right] {$x$};
coordinate (y) at (0,3) node[above] {$y$};
and
node[right] at (x) {$x$};
node[above] at (y) {$y$};
would yield the same result. But they don't. I get the following output:
With coordinate (x) at (4,0) node[right] {$x$};
, I meant, the system will create a node at (4,0)
and will place the text $x$
to its right.
Based on the output, I see the text $x$
is placed at (0,0)
, with the above command.
Why does this happen.
MWE:
documentclass{article}
usepackage{tikz}
usetikzlibrary{intersections}
begin{document}
begin{tikzpicture}
coordinate (x) at (4,0) node[right] {$x$};
coordinate (y) at (0,3) node[above] {$y$};
node[right] at (x) {$x$};
node[above] at (y) {$y$};
draw[<->,thick] (0,3) |- (4,0);
end{tikzpicture}
end{document}
tikz-pgf
add a comment |
This question is related to Strange behavior in TikZ draw command but is not the same.
While working with coordinates
and nodes
in TikZ, I was expecting that:
coordinate (x) at (4,0) node[right] {$x$};
coordinate (y) at (0,3) node[above] {$y$};
and
node[right] at (x) {$x$};
node[above] at (y) {$y$};
would yield the same result. But they don't. I get the following output:
With coordinate (x) at (4,0) node[right] {$x$};
, I meant, the system will create a node at (4,0)
and will place the text $x$
to its right.
Based on the output, I see the text $x$
is placed at (0,0)
, with the above command.
Why does this happen.
MWE:
documentclass{article}
usepackage{tikz}
usetikzlibrary{intersections}
begin{document}
begin{tikzpicture}
coordinate (x) at (4,0) node[right] {$x$};
coordinate (y) at (0,3) node[above] {$y$};
node[right] at (x) {$x$};
node[above] at (y) {$y$};
draw[<->,thick] (0,3) |- (4,0);
end{tikzpicture}
end{document}
tikz-pgf
1
Why would they? Trypath (x) node[right] {$x$};path (y) node[above] {$y$};
. If you give TikZ contradicting instructions, or place the instructions in the wrong order, you will get an unexpected result. BTW, you expect answerers to provide you with a full MWE, i.e. a document that starts withdocumentclass
etc. Could you please consider also using such an MWE in your question?
– marmot
8 hours ago
@marmot - I have added the MWE.
– subham soni
8 hours ago
A trick to solve all these mysteries: just adddraw
option to the nodes, and you will probably see the difference.
– JouleV
8 hours ago
@JouleV - That would still not explain why it happens. I am more interested in the why part.
– subham soni
8 hours ago
The "why part" is simply that incoordinate (x) at (4,0) node[right] {$x$};
theat (4,0)
gets eaten up bycoordinate (x) at
and then TikZ "sees"node[right] {$x$}
and inserts the default coordinate(0,0)
to parse it.
– marmot
6 hours ago
add a comment |
This question is related to Strange behavior in TikZ draw command but is not the same.
While working with coordinates
and nodes
in TikZ, I was expecting that:
coordinate (x) at (4,0) node[right] {$x$};
coordinate (y) at (0,3) node[above] {$y$};
and
node[right] at (x) {$x$};
node[above] at (y) {$y$};
would yield the same result. But they don't. I get the following output:
With coordinate (x) at (4,0) node[right] {$x$};
, I meant, the system will create a node at (4,0)
and will place the text $x$
to its right.
Based on the output, I see the text $x$
is placed at (0,0)
, with the above command.
Why does this happen.
MWE:
documentclass{article}
usepackage{tikz}
usetikzlibrary{intersections}
begin{document}
begin{tikzpicture}
coordinate (x) at (4,0) node[right] {$x$};
coordinate (y) at (0,3) node[above] {$y$};
node[right] at (x) {$x$};
node[above] at (y) {$y$};
draw[<->,thick] (0,3) |- (4,0);
end{tikzpicture}
end{document}
tikz-pgf
This question is related to Strange behavior in TikZ draw command but is not the same.
While working with coordinates
and nodes
in TikZ, I was expecting that:
coordinate (x) at (4,0) node[right] {$x$};
coordinate (y) at (0,3) node[above] {$y$};
and
node[right] at (x) {$x$};
node[above] at (y) {$y$};
would yield the same result. But they don't. I get the following output:
With coordinate (x) at (4,0) node[right] {$x$};
, I meant, the system will create a node at (4,0)
and will place the text $x$
to its right.
Based on the output, I see the text $x$
is placed at (0,0)
, with the above command.
Why does this happen.
MWE:
documentclass{article}
usepackage{tikz}
usetikzlibrary{intersections}
begin{document}
begin{tikzpicture}
coordinate (x) at (4,0) node[right] {$x$};
coordinate (y) at (0,3) node[above] {$y$};
node[right] at (x) {$x$};
node[above] at (y) {$y$};
draw[<->,thick] (0,3) |- (4,0);
end{tikzpicture}
end{document}
tikz-pgf
tikz-pgf
edited 8 hours ago
subham soni
asked 8 hours ago
subham sonisubham soni
4,51983184
4,51983184
1
Why would they? Trypath (x) node[right] {$x$};path (y) node[above] {$y$};
. If you give TikZ contradicting instructions, or place the instructions in the wrong order, you will get an unexpected result. BTW, you expect answerers to provide you with a full MWE, i.e. a document that starts withdocumentclass
etc. Could you please consider also using such an MWE in your question?
– marmot
8 hours ago
@marmot - I have added the MWE.
– subham soni
8 hours ago
A trick to solve all these mysteries: just adddraw
option to the nodes, and you will probably see the difference.
– JouleV
8 hours ago
@JouleV - That would still not explain why it happens. I am more interested in the why part.
– subham soni
8 hours ago
The "why part" is simply that incoordinate (x) at (4,0) node[right] {$x$};
theat (4,0)
gets eaten up bycoordinate (x) at
and then TikZ "sees"node[right] {$x$}
and inserts the default coordinate(0,0)
to parse it.
– marmot
6 hours ago
add a comment |
1
Why would they? Trypath (x) node[right] {$x$};path (y) node[above] {$y$};
. If you give TikZ contradicting instructions, or place the instructions in the wrong order, you will get an unexpected result. BTW, you expect answerers to provide you with a full MWE, i.e. a document that starts withdocumentclass
etc. Could you please consider also using such an MWE in your question?
– marmot
8 hours ago
@marmot - I have added the MWE.
– subham soni
8 hours ago
A trick to solve all these mysteries: just adddraw
option to the nodes, and you will probably see the difference.
– JouleV
8 hours ago
@JouleV - That would still not explain why it happens. I am more interested in the why part.
– subham soni
8 hours ago
The "why part" is simply that incoordinate (x) at (4,0) node[right] {$x$};
theat (4,0)
gets eaten up bycoordinate (x) at
and then TikZ "sees"node[right] {$x$}
and inserts the default coordinate(0,0)
to parse it.
– marmot
6 hours ago
1
1
Why would they? Try
path (x) node[right] {$x$};path (y) node[above] {$y$};
. If you give TikZ contradicting instructions, or place the instructions in the wrong order, you will get an unexpected result. BTW, you expect answerers to provide you with a full MWE, i.e. a document that starts with documentclass
etc. Could you please consider also using such an MWE in your question?– marmot
8 hours ago
Why would they? Try
path (x) node[right] {$x$};path (y) node[above] {$y$};
. If you give TikZ contradicting instructions, or place the instructions in the wrong order, you will get an unexpected result. BTW, you expect answerers to provide you with a full MWE, i.e. a document that starts with documentclass
etc. Could you please consider also using such an MWE in your question?– marmot
8 hours ago
@marmot - I have added the MWE.
– subham soni
8 hours ago
@marmot - I have added the MWE.
– subham soni
8 hours ago
A trick to solve all these mysteries: just add
draw
option to the nodes, and you will probably see the difference.– JouleV
8 hours ago
A trick to solve all these mysteries: just add
draw
option to the nodes, and you will probably see the difference.– JouleV
8 hours ago
@JouleV - That would still not explain why it happens. I am more interested in the why part.
– subham soni
8 hours ago
@JouleV - That would still not explain why it happens. I am more interested in the why part.
– subham soni
8 hours ago
The "why part" is simply that in
coordinate (x) at (4,0) node[right] {$x$};
the at (4,0)
gets eaten up by coordinate (x) at
and then TikZ "sees" node[right] {$x$}
and inserts the default coordinate (0,0)
to parse it.– marmot
6 hours ago
The "why part" is simply that in
coordinate (x) at (4,0) node[right] {$x$};
the at (4,0)
gets eaten up by coordinate (x) at
and then TikZ "sees" node[right] {$x$}
and inserts the default coordinate (0,0)
to parse it.– marmot
6 hours ago
add a comment |
3 Answers
3
active
oldest
votes
try the following:
documentclass{article}
usepackage{tikz}
%usetikzlibrary{intersections} not used in this mwe
begin{document}
begin{tikzpicture}
coordinate[label=right:$x$] (x) at (4,0);
coordinate[label=above:$y$] (y) at (0,3);
draw[<->,thick] (y) |- (x);
end{tikzpicture}
end{document}
add a comment |
In section 17.2.1 of the TikZ manual, the commands for such works are shown:
path ... node ...
(1.1)
or
node ...
(1.2)
path ... coordinate ...
(2.1)
or
coordinate ...
(2.2)
coordinate ... node ...
are not present!
That is why coordinate (x) at (4,0) node[right] {$x$};
and node[right] at (x) {$x$};
don't give the same result. In fact, coordinate (x) at (4,0) node[right] {$x$};
is understood as
coordinate (x) at (4,0);
path node[right] {$x$}; % (0,0) in case no coordinates are specified
That is why we get
with this code
documentclass[tikz]{standalone}
begin{document}
begin{tikzpicture}
coordinate (x) at (2,0) node[draw,right] {world};
fill (x) circle (1pt)
(0,0) circle (1pt);
end{tikzpicture}
end{document}
and we get
with this code
documentclass[tikz]{standalone}
begin{document}
begin{tikzpicture}
node[draw] (x) at (2,0) {Hello} node[draw,right] {world};
fill (0,0) circle (1pt);
end{tikzpicture}
end{document}
So how to solve it? We can't combine (2.2) or (1.2) with ... node ...
, but we can do it with (1.1) or (2.1):
path (4,0) coordinate (x) node[right] {$x$};
Remember that draw
, fill
, filldraw
... are all daughters of path
, so they are all valid. But node
and coordinate
are not.
I found this using the draw
powerful trick :)
When you say that "coordinate ... node ... are not present!" it is not very accurate becausecoordinate ...;
is the same aspath coordinate ...
, socoordinate (x) at (4,0) node[right] {$x$};
is the same aspath coordinate (x) at (4,0) node[right] {$x$};
which is valid (but as you mention the node is set at(0,0)
).
– Kpym
4 hours ago
add a comment |
It doesn't give you the expected result because the syntax is not appropriate. (At which level do you expect an explanation? Does it help that in coordinate (x) at (4,0) node[right] {$x$};
at (4,0)
got "absorbed" by coordinate (x)
so that TikZ adds the default coordinate (0,0)
to interpret node[right] {$x$}
?) You can condense all statements to one line.
documentclass[tikz,border=3.14mm]{standalone}
begin{document}
begin{tikzpicture}
draw[<->,thick] (0,3) coordinate (y) node[above] {$y$} |- (4,0) coordinate (x) node[right] {$x$};
end{tikzpicture}
end{document}
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');
var $window = $(window),
onScroll = function(e) {
var $elem = $('.new-login-left'),
docViewTop = $window.scrollTop(),
docViewBottom = docViewTop + $window.height(),
elemTop = $elem.offset().top,
elemBottom = elemTop + $elem.height();
if ((docViewTop elemBottom)) {
StackExchange.using('gps', function() { StackExchange.gps.track('embedded_signup_form.view', { location: 'question_page' }); });
$window.unbind('scroll', onScroll);
}
};
$window.on('scroll', onScroll);
});
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%2f481386%2fnode-command-while-defining-a-coordinate-in-tikz%23new-answer', 'question_page');
}
);
Post as a guest
Required, but never shown
3 Answers
3
active
oldest
votes
3 Answers
3
active
oldest
votes
active
oldest
votes
active
oldest
votes
try the following:
documentclass{article}
usepackage{tikz}
%usetikzlibrary{intersections} not used in this mwe
begin{document}
begin{tikzpicture}
coordinate[label=right:$x$] (x) at (4,0);
coordinate[label=above:$y$] (y) at (0,3);
draw[<->,thick] (y) |- (x);
end{tikzpicture}
end{document}
add a comment |
try the following:
documentclass{article}
usepackage{tikz}
%usetikzlibrary{intersections} not used in this mwe
begin{document}
begin{tikzpicture}
coordinate[label=right:$x$] (x) at (4,0);
coordinate[label=above:$y$] (y) at (0,3);
draw[<->,thick] (y) |- (x);
end{tikzpicture}
end{document}
add a comment |
try the following:
documentclass{article}
usepackage{tikz}
%usetikzlibrary{intersections} not used in this mwe
begin{document}
begin{tikzpicture}
coordinate[label=right:$x$] (x) at (4,0);
coordinate[label=above:$y$] (y) at (0,3);
draw[<->,thick] (y) |- (x);
end{tikzpicture}
end{document}
try the following:
documentclass{article}
usepackage{tikz}
%usetikzlibrary{intersections} not used in this mwe
begin{document}
begin{tikzpicture}
coordinate[label=right:$x$] (x) at (4,0);
coordinate[label=above:$y$] (y) at (0,3);
draw[<->,thick] (y) |- (x);
end{tikzpicture}
end{document}
answered 8 hours ago
ZarkoZarko
128k868167
128k868167
add a comment |
add a comment |
In section 17.2.1 of the TikZ manual, the commands for such works are shown:
path ... node ...
(1.1)
or
node ...
(1.2)
path ... coordinate ...
(2.1)
or
coordinate ...
(2.2)
coordinate ... node ...
are not present!
That is why coordinate (x) at (4,0) node[right] {$x$};
and node[right] at (x) {$x$};
don't give the same result. In fact, coordinate (x) at (4,0) node[right] {$x$};
is understood as
coordinate (x) at (4,0);
path node[right] {$x$}; % (0,0) in case no coordinates are specified
That is why we get
with this code
documentclass[tikz]{standalone}
begin{document}
begin{tikzpicture}
coordinate (x) at (2,0) node[draw,right] {world};
fill (x) circle (1pt)
(0,0) circle (1pt);
end{tikzpicture}
end{document}
and we get
with this code
documentclass[tikz]{standalone}
begin{document}
begin{tikzpicture}
node[draw] (x) at (2,0) {Hello} node[draw,right] {world};
fill (0,0) circle (1pt);
end{tikzpicture}
end{document}
So how to solve it? We can't combine (2.2) or (1.2) with ... node ...
, but we can do it with (1.1) or (2.1):
path (4,0) coordinate (x) node[right] {$x$};
Remember that draw
, fill
, filldraw
... are all daughters of path
, so they are all valid. But node
and coordinate
are not.
I found this using the draw
powerful trick :)
When you say that "coordinate ... node ... are not present!" it is not very accurate becausecoordinate ...;
is the same aspath coordinate ...
, socoordinate (x) at (4,0) node[right] {$x$};
is the same aspath coordinate (x) at (4,0) node[right] {$x$};
which is valid (but as you mention the node is set at(0,0)
).
– Kpym
4 hours ago
add a comment |
In section 17.2.1 of the TikZ manual, the commands for such works are shown:
path ... node ...
(1.1)
or
node ...
(1.2)
path ... coordinate ...
(2.1)
or
coordinate ...
(2.2)
coordinate ... node ...
are not present!
That is why coordinate (x) at (4,0) node[right] {$x$};
and node[right] at (x) {$x$};
don't give the same result. In fact, coordinate (x) at (4,0) node[right] {$x$};
is understood as
coordinate (x) at (4,0);
path node[right] {$x$}; % (0,0) in case no coordinates are specified
That is why we get
with this code
documentclass[tikz]{standalone}
begin{document}
begin{tikzpicture}
coordinate (x) at (2,0) node[draw,right] {world};
fill (x) circle (1pt)
(0,0) circle (1pt);
end{tikzpicture}
end{document}
and we get
with this code
documentclass[tikz]{standalone}
begin{document}
begin{tikzpicture}
node[draw] (x) at (2,0) {Hello} node[draw,right] {world};
fill (0,0) circle (1pt);
end{tikzpicture}
end{document}
So how to solve it? We can't combine (2.2) or (1.2) with ... node ...
, but we can do it with (1.1) or (2.1):
path (4,0) coordinate (x) node[right] {$x$};
Remember that draw
, fill
, filldraw
... are all daughters of path
, so they are all valid. But node
and coordinate
are not.
I found this using the draw
powerful trick :)
When you say that "coordinate ... node ... are not present!" it is not very accurate becausecoordinate ...;
is the same aspath coordinate ...
, socoordinate (x) at (4,0) node[right] {$x$};
is the same aspath coordinate (x) at (4,0) node[right] {$x$};
which is valid (but as you mention the node is set at(0,0)
).
– Kpym
4 hours ago
add a comment |
In section 17.2.1 of the TikZ manual, the commands for such works are shown:
path ... node ...
(1.1)
or
node ...
(1.2)
path ... coordinate ...
(2.1)
or
coordinate ...
(2.2)
coordinate ... node ...
are not present!
That is why coordinate (x) at (4,0) node[right] {$x$};
and node[right] at (x) {$x$};
don't give the same result. In fact, coordinate (x) at (4,0) node[right] {$x$};
is understood as
coordinate (x) at (4,0);
path node[right] {$x$}; % (0,0) in case no coordinates are specified
That is why we get
with this code
documentclass[tikz]{standalone}
begin{document}
begin{tikzpicture}
coordinate (x) at (2,0) node[draw,right] {world};
fill (x) circle (1pt)
(0,0) circle (1pt);
end{tikzpicture}
end{document}
and we get
with this code
documentclass[tikz]{standalone}
begin{document}
begin{tikzpicture}
node[draw] (x) at (2,0) {Hello} node[draw,right] {world};
fill (0,0) circle (1pt);
end{tikzpicture}
end{document}
So how to solve it? We can't combine (2.2) or (1.2) with ... node ...
, but we can do it with (1.1) or (2.1):
path (4,0) coordinate (x) node[right] {$x$};
Remember that draw
, fill
, filldraw
... are all daughters of path
, so they are all valid. But node
and coordinate
are not.
I found this using the draw
powerful trick :)
In section 17.2.1 of the TikZ manual, the commands for such works are shown:
path ... node ...
(1.1)
or
node ...
(1.2)
path ... coordinate ...
(2.1)
or
coordinate ...
(2.2)
coordinate ... node ...
are not present!
That is why coordinate (x) at (4,0) node[right] {$x$};
and node[right] at (x) {$x$};
don't give the same result. In fact, coordinate (x) at (4,0) node[right] {$x$};
is understood as
coordinate (x) at (4,0);
path node[right] {$x$}; % (0,0) in case no coordinates are specified
That is why we get
with this code
documentclass[tikz]{standalone}
begin{document}
begin{tikzpicture}
coordinate (x) at (2,0) node[draw,right] {world};
fill (x) circle (1pt)
(0,0) circle (1pt);
end{tikzpicture}
end{document}
and we get
with this code
documentclass[tikz]{standalone}
begin{document}
begin{tikzpicture}
node[draw] (x) at (2,0) {Hello} node[draw,right] {world};
fill (0,0) circle (1pt);
end{tikzpicture}
end{document}
So how to solve it? We can't combine (2.2) or (1.2) with ... node ...
, but we can do it with (1.1) or (2.1):
path (4,0) coordinate (x) node[right] {$x$};
Remember that draw
, fill
, filldraw
... are all daughters of path
, so they are all valid. But node
and coordinate
are not.
I found this using the draw
powerful trick :)
edited 8 hours ago
answered 8 hours ago
JouleVJouleV
7,89222053
7,89222053
When you say that "coordinate ... node ... are not present!" it is not very accurate becausecoordinate ...;
is the same aspath coordinate ...
, socoordinate (x) at (4,0) node[right] {$x$};
is the same aspath coordinate (x) at (4,0) node[right] {$x$};
which is valid (but as you mention the node is set at(0,0)
).
– Kpym
4 hours ago
add a comment |
When you say that "coordinate ... node ... are not present!" it is not very accurate becausecoordinate ...;
is the same aspath coordinate ...
, socoordinate (x) at (4,0) node[right] {$x$};
is the same aspath coordinate (x) at (4,0) node[right] {$x$};
which is valid (but as you mention the node is set at(0,0)
).
– Kpym
4 hours ago
When you say that "coordinate ... node ... are not present!" it is not very accurate because
coordinate ...;
is the same as path coordinate ...
, so coordinate (x) at (4,0) node[right] {$x$};
is the same as path coordinate (x) at (4,0) node[right] {$x$};
which is valid (but as you mention the node is set at (0,0)
).– Kpym
4 hours ago
When you say that "coordinate ... node ... are not present!" it is not very accurate because
coordinate ...;
is the same as path coordinate ...
, so coordinate (x) at (4,0) node[right] {$x$};
is the same as path coordinate (x) at (4,0) node[right] {$x$};
which is valid (but as you mention the node is set at (0,0)
).– Kpym
4 hours ago
add a comment |
It doesn't give you the expected result because the syntax is not appropriate. (At which level do you expect an explanation? Does it help that in coordinate (x) at (4,0) node[right] {$x$};
at (4,0)
got "absorbed" by coordinate (x)
so that TikZ adds the default coordinate (0,0)
to interpret node[right] {$x$}
?) You can condense all statements to one line.
documentclass[tikz,border=3.14mm]{standalone}
begin{document}
begin{tikzpicture}
draw[<->,thick] (0,3) coordinate (y) node[above] {$y$} |- (4,0) coordinate (x) node[right] {$x$};
end{tikzpicture}
end{document}
add a comment |
It doesn't give you the expected result because the syntax is not appropriate. (At which level do you expect an explanation? Does it help that in coordinate (x) at (4,0) node[right] {$x$};
at (4,0)
got "absorbed" by coordinate (x)
so that TikZ adds the default coordinate (0,0)
to interpret node[right] {$x$}
?) You can condense all statements to one line.
documentclass[tikz,border=3.14mm]{standalone}
begin{document}
begin{tikzpicture}
draw[<->,thick] (0,3) coordinate (y) node[above] {$y$} |- (4,0) coordinate (x) node[right] {$x$};
end{tikzpicture}
end{document}
add a comment |
It doesn't give you the expected result because the syntax is not appropriate. (At which level do you expect an explanation? Does it help that in coordinate (x) at (4,0) node[right] {$x$};
at (4,0)
got "absorbed" by coordinate (x)
so that TikZ adds the default coordinate (0,0)
to interpret node[right] {$x$}
?) You can condense all statements to one line.
documentclass[tikz,border=3.14mm]{standalone}
begin{document}
begin{tikzpicture}
draw[<->,thick] (0,3) coordinate (y) node[above] {$y$} |- (4,0) coordinate (x) node[right] {$x$};
end{tikzpicture}
end{document}
It doesn't give you the expected result because the syntax is not appropriate. (At which level do you expect an explanation? Does it help that in coordinate (x) at (4,0) node[right] {$x$};
at (4,0)
got "absorbed" by coordinate (x)
so that TikZ adds the default coordinate (0,0)
to interpret node[right] {$x$}
?) You can condense all statements to one line.
documentclass[tikz,border=3.14mm]{standalone}
begin{document}
begin{tikzpicture}
draw[<->,thick] (0,3) coordinate (y) node[above] {$y$} |- (4,0) coordinate (x) node[right] {$x$};
end{tikzpicture}
end{document}
answered 8 hours ago
marmotmarmot
111k5140264
111k5140264
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');
var $window = $(window),
onScroll = function(e) {
var $elem = $('.new-login-left'),
docViewTop = $window.scrollTop(),
docViewBottom = docViewTop + $window.height(),
elemTop = $elem.offset().top,
elemBottom = elemTop + $elem.height();
if ((docViewTop elemBottom)) {
StackExchange.using('gps', function() { StackExchange.gps.track('embedded_signup_form.view', { location: 'question_page' }); });
$window.unbind('scroll', onScroll);
}
};
$window.on('scroll', onScroll);
});
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%2f481386%2fnode-command-while-defining-a-coordinate-in-tikz%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');
var $window = $(window),
onScroll = function(e) {
var $elem = $('.new-login-left'),
docViewTop = $window.scrollTop(),
docViewBottom = docViewTop + $window.height(),
elemTop = $elem.offset().top,
elemBottom = elemTop + $elem.height();
if ((docViewTop elemBottom)) {
StackExchange.using('gps', function() { StackExchange.gps.track('embedded_signup_form.view', { location: 'question_page' }); });
$window.unbind('scroll', onScroll);
}
};
$window.on('scroll', onScroll);
});
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');
var $window = $(window),
onScroll = function(e) {
var $elem = $('.new-login-left'),
docViewTop = $window.scrollTop(),
docViewBottom = docViewTop + $window.height(),
elemTop = $elem.offset().top,
elemBottom = elemTop + $elem.height();
if ((docViewTop elemBottom)) {
StackExchange.using('gps', function() { StackExchange.gps.track('embedded_signup_form.view', { location: 'question_page' }); });
$window.unbind('scroll', onScroll);
}
};
$window.on('scroll', onScroll);
});
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');
var $window = $(window),
onScroll = function(e) {
var $elem = $('.new-login-left'),
docViewTop = $window.scrollTop(),
docViewBottom = docViewTop + $window.height(),
elemTop = $elem.offset().top,
elemBottom = elemTop + $elem.height();
if ((docViewTop elemBottom)) {
StackExchange.using('gps', function() { StackExchange.gps.track('embedded_signup_form.view', { location: 'question_page' }); });
$window.unbind('scroll', onScroll);
}
};
$window.on('scroll', onScroll);
});
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
1
Why would they? Try
path (x) node[right] {$x$};path (y) node[above] {$y$};
. If you give TikZ contradicting instructions, or place the instructions in the wrong order, you will get an unexpected result. BTW, you expect answerers to provide you with a full MWE, i.e. a document that starts withdocumentclass
etc. Could you please consider also using such an MWE in your question?– marmot
8 hours ago
@marmot - I have added the MWE.
– subham soni
8 hours ago
A trick to solve all these mysteries: just add
draw
option to the nodes, and you will probably see the difference.– JouleV
8 hours ago
@JouleV - That would still not explain why it happens. I am more interested in the why part.
– subham soni
8 hours ago
The "why part" is simply that in
coordinate (x) at (4,0) node[right] {$x$};
theat (4,0)
gets eaten up bycoordinate (x) at
and then TikZ "sees"node[right] {$x$}
and inserts the default coordinate(0,0)
to parse it.– marmot
6 hours ago