How to align addlegendtry with the plot
Please consider this MWE:
documentclass{article}
usepackage[english]{babel}
usepackage[utf8]{inputenc}
usepackage[T1]{fontenc}
usepackage[a4paper,margin=1in,footskip=0.25in]{geometry}
usepackage{amssymb}
usepackage{amsmath}
usepackage{pgfplots}
pgfplotsset{compat=1.15}
pgfplotsset{soldot/.style={color=black,only marks,mark=*}}
pgfplotsset{holdot/.style={color=red,fill=white,very thick,only marks,mark=*}}
begin{document}
begin{center}
begin{tikzpicture}[declare function={f(x,y)=(x*y)/(x*x+2*y*y);}]
begin{axis} [
axis on top,
axis equal image,
axis lines=center,
xlabel=$x$,
ylabel=$y$,
zlabel=$z$,
zmin=-1,
zmax=1,
ztick={-1,0,0.33,1},
zticklabels={$-1$,$0$,$1/3$,$1$},
ticklabel style={font=tiny},
legend pos=outer north east,
legend style={cells={align=left}},
legend cell align={left},
view={-135}{25},
]
addplot3[surf,mesh/ordering=y varies,shader=interp,domain=-1:1,domain y=-1:1,samples=61, samples y=61] {f(x,y)};
addlegendentry{(f(x,y))}
end{axis}
end{tikzpicture}
end{center}
end{document}
As you can see, addlegendentry
as far from the graph. How can we keep them together? Something like:
Thanks!!
tikz-pgf
|
show 5 more comments
Please consider this MWE:
documentclass{article}
usepackage[english]{babel}
usepackage[utf8]{inputenc}
usepackage[T1]{fontenc}
usepackage[a4paper,margin=1in,footskip=0.25in]{geometry}
usepackage{amssymb}
usepackage{amsmath}
usepackage{pgfplots}
pgfplotsset{compat=1.15}
pgfplotsset{soldot/.style={color=black,only marks,mark=*}}
pgfplotsset{holdot/.style={color=red,fill=white,very thick,only marks,mark=*}}
begin{document}
begin{center}
begin{tikzpicture}[declare function={f(x,y)=(x*y)/(x*x+2*y*y);}]
begin{axis} [
axis on top,
axis equal image,
axis lines=center,
xlabel=$x$,
ylabel=$y$,
zlabel=$z$,
zmin=-1,
zmax=1,
ztick={-1,0,0.33,1},
zticklabels={$-1$,$0$,$1/3$,$1$},
ticklabel style={font=tiny},
legend pos=outer north east,
legend style={cells={align=left}},
legend cell align={left},
view={-135}{25},
]
addplot3[surf,mesh/ordering=y varies,shader=interp,domain=-1:1,domain y=-1:1,samples=61, samples y=61] {f(x,y)};
addlegendentry{(f(x,y))}
end{axis}
end{tikzpicture}
end{center}
end{document}
As you can see, addlegendentry
as far from the graph. How can we keep them together? Something like:
Thanks!!
tikz-pgf
1
Are you sure you want to plot the function in this way? If you use polar coordinates in the x-y plane,x=r cos(phi)
andy=r sin(phi)
, you see that the function does not depend onr
but only on the angle. This explains the behavior at 0, where the function is not well-defined. And otherwise the function depends only on one variable, so I am wondering if you would be better off if you plotted a function of one variable only, or at least use a different parametrization.
– marmot
47 mins ago
@marmot please see the edit. The function has a "normal" behaviour when changingdomain y=-1.2:1
todomain y=-1:1
. If you want to use change of variables go ahead :). Do you know how to "enlarge" the axis without rescaling the entire function in order to make it a little more bigger?
– manooooh
45 mins ago
1
Normally you can setwidth=15cm
or something like this. Of course, withaxis equal image,
one needs to be a bit careful. What I meant to say is that the function is not well-defined atx=y=0
and otherwise only a function that depends on one variable, not on two. You see this actually rather well in the upper plot.
– marmot
39 mins ago
1
I need to sleep so I will just post some 1d plot.
– marmot
21 mins ago
1
Please do not alter the question that essentially by editing. It is much better to ask a new question.
– TeXnician
4 mins ago
|
show 5 more comments
Please consider this MWE:
documentclass{article}
usepackage[english]{babel}
usepackage[utf8]{inputenc}
usepackage[T1]{fontenc}
usepackage[a4paper,margin=1in,footskip=0.25in]{geometry}
usepackage{amssymb}
usepackage{amsmath}
usepackage{pgfplots}
pgfplotsset{compat=1.15}
pgfplotsset{soldot/.style={color=black,only marks,mark=*}}
pgfplotsset{holdot/.style={color=red,fill=white,very thick,only marks,mark=*}}
begin{document}
begin{center}
begin{tikzpicture}[declare function={f(x,y)=(x*y)/(x*x+2*y*y);}]
begin{axis} [
axis on top,
axis equal image,
axis lines=center,
xlabel=$x$,
ylabel=$y$,
zlabel=$z$,
zmin=-1,
zmax=1,
ztick={-1,0,0.33,1},
zticklabels={$-1$,$0$,$1/3$,$1$},
ticklabel style={font=tiny},
legend pos=outer north east,
legend style={cells={align=left}},
legend cell align={left},
view={-135}{25},
]
addplot3[surf,mesh/ordering=y varies,shader=interp,domain=-1:1,domain y=-1:1,samples=61, samples y=61] {f(x,y)};
addlegendentry{(f(x,y))}
end{axis}
end{tikzpicture}
end{center}
end{document}
As you can see, addlegendentry
as far from the graph. How can we keep them together? Something like:
Thanks!!
tikz-pgf
Please consider this MWE:
documentclass{article}
usepackage[english]{babel}
usepackage[utf8]{inputenc}
usepackage[T1]{fontenc}
usepackage[a4paper,margin=1in,footskip=0.25in]{geometry}
usepackage{amssymb}
usepackage{amsmath}
usepackage{pgfplots}
pgfplotsset{compat=1.15}
pgfplotsset{soldot/.style={color=black,only marks,mark=*}}
pgfplotsset{holdot/.style={color=red,fill=white,very thick,only marks,mark=*}}
begin{document}
begin{center}
begin{tikzpicture}[declare function={f(x,y)=(x*y)/(x*x+2*y*y);}]
begin{axis} [
axis on top,
axis equal image,
axis lines=center,
xlabel=$x$,
ylabel=$y$,
zlabel=$z$,
zmin=-1,
zmax=1,
ztick={-1,0,0.33,1},
zticklabels={$-1$,$0$,$1/3$,$1$},
ticklabel style={font=tiny},
legend pos=outer north east,
legend style={cells={align=left}},
legend cell align={left},
view={-135}{25},
]
addplot3[surf,mesh/ordering=y varies,shader=interp,domain=-1:1,domain y=-1:1,samples=61, samples y=61] {f(x,y)};
addlegendentry{(f(x,y))}
end{axis}
end{tikzpicture}
end{center}
end{document}
As you can see, addlegendentry
as far from the graph. How can we keep them together? Something like:
Thanks!!
tikz-pgf
tikz-pgf
edited 6 mins ago
manooooh
asked 1 hour ago
manoooohmanooooh
1,0681516
1,0681516
1
Are you sure you want to plot the function in this way? If you use polar coordinates in the x-y plane,x=r cos(phi)
andy=r sin(phi)
, you see that the function does not depend onr
but only on the angle. This explains the behavior at 0, where the function is not well-defined. And otherwise the function depends only on one variable, so I am wondering if you would be better off if you plotted a function of one variable only, or at least use a different parametrization.
– marmot
47 mins ago
@marmot please see the edit. The function has a "normal" behaviour when changingdomain y=-1.2:1
todomain y=-1:1
. If you want to use change of variables go ahead :). Do you know how to "enlarge" the axis without rescaling the entire function in order to make it a little more bigger?
– manooooh
45 mins ago
1
Normally you can setwidth=15cm
or something like this. Of course, withaxis equal image,
one needs to be a bit careful. What I meant to say is that the function is not well-defined atx=y=0
and otherwise only a function that depends on one variable, not on two. You see this actually rather well in the upper plot.
– marmot
39 mins ago
1
I need to sleep so I will just post some 1d plot.
– marmot
21 mins ago
1
Please do not alter the question that essentially by editing. It is much better to ask a new question.
– TeXnician
4 mins ago
|
show 5 more comments
1
Are you sure you want to plot the function in this way? If you use polar coordinates in the x-y plane,x=r cos(phi)
andy=r sin(phi)
, you see that the function does not depend onr
but only on the angle. This explains the behavior at 0, where the function is not well-defined. And otherwise the function depends only on one variable, so I am wondering if you would be better off if you plotted a function of one variable only, or at least use a different parametrization.
– marmot
47 mins ago
@marmot please see the edit. The function has a "normal" behaviour when changingdomain y=-1.2:1
todomain y=-1:1
. If you want to use change of variables go ahead :). Do you know how to "enlarge" the axis without rescaling the entire function in order to make it a little more bigger?
– manooooh
45 mins ago
1
Normally you can setwidth=15cm
or something like this. Of course, withaxis equal image,
one needs to be a bit careful. What I meant to say is that the function is not well-defined atx=y=0
and otherwise only a function that depends on one variable, not on two. You see this actually rather well in the upper plot.
– marmot
39 mins ago
1
I need to sleep so I will just post some 1d plot.
– marmot
21 mins ago
1
Please do not alter the question that essentially by editing. It is much better to ask a new question.
– TeXnician
4 mins ago
1
1
Are you sure you want to plot the function in this way? If you use polar coordinates in the x-y plane,
x=r cos(phi)
and y=r sin(phi)
, you see that the function does not depend on r
but only on the angle. This explains the behavior at 0, where the function is not well-defined. And otherwise the function depends only on one variable, so I am wondering if you would be better off if you plotted a function of one variable only, or at least use a different parametrization.– marmot
47 mins ago
Are you sure you want to plot the function in this way? If you use polar coordinates in the x-y plane,
x=r cos(phi)
and y=r sin(phi)
, you see that the function does not depend on r
but only on the angle. This explains the behavior at 0, where the function is not well-defined. And otherwise the function depends only on one variable, so I am wondering if you would be better off if you plotted a function of one variable only, or at least use a different parametrization.– marmot
47 mins ago
@marmot please see the edit. The function has a "normal" behaviour when changing
domain y=-1.2:1
to domain y=-1:1
. If you want to use change of variables go ahead :). Do you know how to "enlarge" the axis without rescaling the entire function in order to make it a little more bigger?– manooooh
45 mins ago
@marmot please see the edit. The function has a "normal" behaviour when changing
domain y=-1.2:1
to domain y=-1:1
. If you want to use change of variables go ahead :). Do you know how to "enlarge" the axis without rescaling the entire function in order to make it a little more bigger?– manooooh
45 mins ago
1
1
Normally you can set
width=15cm
or something like this. Of course, with axis equal image,
one needs to be a bit careful. What I meant to say is that the function is not well-defined at x=y=0
and otherwise only a function that depends on one variable, not on two. You see this actually rather well in the upper plot.– marmot
39 mins ago
Normally you can set
width=15cm
or something like this. Of course, with axis equal image,
one needs to be a bit careful. What I meant to say is that the function is not well-defined at x=y=0
and otherwise only a function that depends on one variable, not on two. You see this actually rather well in the upper plot.– marmot
39 mins ago
1
1
I need to sleep so I will just post some 1d plot.
– marmot
21 mins ago
I need to sleep so I will just post some 1d plot.
– marmot
21 mins ago
1
1
Please do not alter the question that essentially by editing. It is much better to ask a new question.
– TeXnician
4 mins ago
Please do not alter the question that essentially by editing. It is much better to ask a new question.
– TeXnician
4 mins ago
|
show 5 more comments
1 Answer
1
active
oldest
votes
Not an answer to the (LaTeX part of the) question. However, if you use polar coordinates in the x-y plane, x=r cos(phi)
and y=r sin(phi)
, you see that the function does not depend on r but only on the angle. So away from the origin x=y=0
all the information is already in a one-dimensional plot.
documentclass[tikz,border=3.14mm]{standalone}
usepackage{pgfplots}
pgfplotsset{compat=1.15}
begin{document}
begin{tikzpicture}[declare function={fan(t)=-(sin(2*t)/(-3 + cos(2*t)));}]
begin{axis}
addplot[domain=0:360,smooth,samples=101] {fan(x)};
end{axis}
end{tikzpicture}
end{document}
I am so sorry, I have not found any problem with the requirement I thought I had a while ago. Please look at the question again. Apologies.
– manooooh
5 mins ago
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%2f476422%2fhow-to-align-addlegendtry-with-the-plot%23new-answer', 'question_page');
}
);
Post as a guest
Required, but never shown
1 Answer
1
active
oldest
votes
1 Answer
1
active
oldest
votes
active
oldest
votes
active
oldest
votes
Not an answer to the (LaTeX part of the) question. However, if you use polar coordinates in the x-y plane, x=r cos(phi)
and y=r sin(phi)
, you see that the function does not depend on r but only on the angle. So away from the origin x=y=0
all the information is already in a one-dimensional plot.
documentclass[tikz,border=3.14mm]{standalone}
usepackage{pgfplots}
pgfplotsset{compat=1.15}
begin{document}
begin{tikzpicture}[declare function={fan(t)=-(sin(2*t)/(-3 + cos(2*t)));}]
begin{axis}
addplot[domain=0:360,smooth,samples=101] {fan(x)};
end{axis}
end{tikzpicture}
end{document}
I am so sorry, I have not found any problem with the requirement I thought I had a while ago. Please look at the question again. Apologies.
– manooooh
5 mins ago
add a comment |
Not an answer to the (LaTeX part of the) question. However, if you use polar coordinates in the x-y plane, x=r cos(phi)
and y=r sin(phi)
, you see that the function does not depend on r but only on the angle. So away from the origin x=y=0
all the information is already in a one-dimensional plot.
documentclass[tikz,border=3.14mm]{standalone}
usepackage{pgfplots}
pgfplotsset{compat=1.15}
begin{document}
begin{tikzpicture}[declare function={fan(t)=-(sin(2*t)/(-3 + cos(2*t)));}]
begin{axis}
addplot[domain=0:360,smooth,samples=101] {fan(x)};
end{axis}
end{tikzpicture}
end{document}
I am so sorry, I have not found any problem with the requirement I thought I had a while ago. Please look at the question again. Apologies.
– manooooh
5 mins ago
add a comment |
Not an answer to the (LaTeX part of the) question. However, if you use polar coordinates in the x-y plane, x=r cos(phi)
and y=r sin(phi)
, you see that the function does not depend on r but only on the angle. So away from the origin x=y=0
all the information is already in a one-dimensional plot.
documentclass[tikz,border=3.14mm]{standalone}
usepackage{pgfplots}
pgfplotsset{compat=1.15}
begin{document}
begin{tikzpicture}[declare function={fan(t)=-(sin(2*t)/(-3 + cos(2*t)));}]
begin{axis}
addplot[domain=0:360,smooth,samples=101] {fan(x)};
end{axis}
end{tikzpicture}
end{document}
Not an answer to the (LaTeX part of the) question. However, if you use polar coordinates in the x-y plane, x=r cos(phi)
and y=r sin(phi)
, you see that the function does not depend on r but only on the angle. So away from the origin x=y=0
all the information is already in a one-dimensional plot.
documentclass[tikz,border=3.14mm]{standalone}
usepackage{pgfplots}
pgfplotsset{compat=1.15}
begin{document}
begin{tikzpicture}[declare function={fan(t)=-(sin(2*t)/(-3 + cos(2*t)));}]
begin{axis}
addplot[domain=0:360,smooth,samples=101] {fan(x)};
end{axis}
end{tikzpicture}
end{document}
answered 21 mins ago
marmotmarmot
103k4121233
103k4121233
I am so sorry, I have not found any problem with the requirement I thought I had a while ago. Please look at the question again. Apologies.
– manooooh
5 mins ago
add a comment |
I am so sorry, I have not found any problem with the requirement I thought I had a while ago. Please look at the question again. Apologies.
– manooooh
5 mins ago
I am so sorry, I have not found any problem with the requirement I thought I had a while ago. Please look at the question again. Apologies.
– manooooh
5 mins ago
I am so sorry, I have not found any problem with the requirement I thought I had a while ago. Please look at the question again. Apologies.
– manooooh
5 mins ago
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%2f476422%2fhow-to-align-addlegendtry-with-the-plot%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
1
Are you sure you want to plot the function in this way? If you use polar coordinates in the x-y plane,
x=r cos(phi)
andy=r sin(phi)
, you see that the function does not depend onr
but only on the angle. This explains the behavior at 0, where the function is not well-defined. And otherwise the function depends only on one variable, so I am wondering if you would be better off if you plotted a function of one variable only, or at least use a different parametrization.– marmot
47 mins ago
@marmot please see the edit. The function has a "normal" behaviour when changing
domain y=-1.2:1
todomain y=-1:1
. If you want to use change of variables go ahead :). Do you know how to "enlarge" the axis without rescaling the entire function in order to make it a little more bigger?– manooooh
45 mins ago
1
Normally you can set
width=15cm
or something like this. Of course, withaxis equal image,
one needs to be a bit careful. What I meant to say is that the function is not well-defined atx=y=0
and otherwise only a function that depends on one variable, not on two. You see this actually rather well in the upper plot.– marmot
39 mins ago
1
I need to sleep so I will just post some 1d plot.
– marmot
21 mins ago
1
Please do not alter the question that essentially by editing. It is much better to ask a new question.
– TeXnician
4 mins ago