Strange plot created based on two numpy arrays and matplotlib
Now I just want to plot a line graph based on two numpy arrays. My x and y are both two (150,1) arrays. After running the following code:
plt.plot(x,y)
What I get is:
Line graph based on two numpy arrays
Hence I am so confused. What do those connected lines represent? I just want one line which goes through all of the points. Any help would be appreciated!
For the dataset, X is just a fixed (150,1) numpy array and y is computed based on the following polynomial function:
def PolyCoefficients(x, coeffs):
""" Returns a polynomial for ``x`` values for the ``coeffs`` provided.
The coefficients must be in ascending order (``x**0`` to ``x**o``).
"""
o = len(coeffs)
y =
for i in range(len(x)):
value = 0
for j in range(o):
value += coeffs[j]*x[i]**j
y.append(value)
return y
The coefficients have been computed and what I want is just a line go through each point of (x,y)
python numpy matplotlib
add a comment |
Now I just want to plot a line graph based on two numpy arrays. My x and y are both two (150,1) arrays. After running the following code:
plt.plot(x,y)
What I get is:
Line graph based on two numpy arrays
Hence I am so confused. What do those connected lines represent? I just want one line which goes through all of the points. Any help would be appreciated!
For the dataset, X is just a fixed (150,1) numpy array and y is computed based on the following polynomial function:
def PolyCoefficients(x, coeffs):
""" Returns a polynomial for ``x`` values for the ``coeffs`` provided.
The coefficients must be in ascending order (``x**0`` to ``x**o``).
"""
o = len(coeffs)
y =
for i in range(len(x)):
value = 0
for j in range(o):
value += coeffs[j]*x[i]**j
y.append(value)
return y
The coefficients have been computed and what I want is just a line go through each point of (x,y)
python numpy matplotlib
add a comment |
Now I just want to plot a line graph based on two numpy arrays. My x and y are both two (150,1) arrays. After running the following code:
plt.plot(x,y)
What I get is:
Line graph based on two numpy arrays
Hence I am so confused. What do those connected lines represent? I just want one line which goes through all of the points. Any help would be appreciated!
For the dataset, X is just a fixed (150,1) numpy array and y is computed based on the following polynomial function:
def PolyCoefficients(x, coeffs):
""" Returns a polynomial for ``x`` values for the ``coeffs`` provided.
The coefficients must be in ascending order (``x**0`` to ``x**o``).
"""
o = len(coeffs)
y =
for i in range(len(x)):
value = 0
for j in range(o):
value += coeffs[j]*x[i]**j
y.append(value)
return y
The coefficients have been computed and what I want is just a line go through each point of (x,y)
python numpy matplotlib
Now I just want to plot a line graph based on two numpy arrays. My x and y are both two (150,1) arrays. After running the following code:
plt.plot(x,y)
What I get is:
Line graph based on two numpy arrays
Hence I am so confused. What do those connected lines represent? I just want one line which goes through all of the points. Any help would be appreciated!
For the dataset, X is just a fixed (150,1) numpy array and y is computed based on the following polynomial function:
def PolyCoefficients(x, coeffs):
""" Returns a polynomial for ``x`` values for the ``coeffs`` provided.
The coefficients must be in ascending order (``x**0`` to ``x**o``).
"""
o = len(coeffs)
y =
for i in range(len(x)):
value = 0
for j in range(o):
value += coeffs[j]*x[i]**j
y.append(value)
return y
The coefficients have been computed and what I want is just a line go through each point of (x,y)
python numpy matplotlib
python numpy matplotlib
edited Nov 23 '18 at 7:08
Joe
6,11421630
6,11421630
asked Nov 23 '18 at 6:50
Bright ChangBright Chang
227
227
add a comment |
add a comment |
1 Answer
1
active
oldest
votes
The pairs of x
and y
represent the points on your graph. With plt.plot() you join the points with a line. If the array x
is not in order, what you have is a line that goes back and forward across the graph. To avoid this you should order the x
array, and the y
accordly. Try with:
new_x, new_y = zip(*sorted(zip(x, y)))
plt.plot(new_x,new_y)
Thank you for your answer. But actually my x is fixed and y is just the output from a polynomial function based on x. The coefficients have already been computed... Does the order of these two arrays change during the computation?
– Bright Chang
Nov 23 '18 at 6:58
If you have just these 2 lists, order them for the graph. I've added some code to the answer, try it and see if it works
– Joe
Nov 23 '18 at 7:03
You are welcome, dont forget to acecpt the answer :) meta.stackexchange.com/questions/5234/…
– Joe
Nov 23 '18 at 7:06
add a comment |
Your Answer
StackExchange.ifUsing("editor", function () {
StackExchange.using("externalEditor", function () {
StackExchange.using("snippets", function () {
StackExchange.snippets.init();
});
});
}, "code-snippets");
StackExchange.ready(function() {
var channelOptions = {
tags: "".split(" "),
id: "1"
};
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: true,
noModals: true,
showLowRepImageUploadWarning: true,
reputationToPostImages: 10,
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%2fstackoverflow.com%2fquestions%2f53441874%2fstrange-plot-created-based-on-two-numpy-arrays-and-matplotlib%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
The pairs of x
and y
represent the points on your graph. With plt.plot() you join the points with a line. If the array x
is not in order, what you have is a line that goes back and forward across the graph. To avoid this you should order the x
array, and the y
accordly. Try with:
new_x, new_y = zip(*sorted(zip(x, y)))
plt.plot(new_x,new_y)
Thank you for your answer. But actually my x is fixed and y is just the output from a polynomial function based on x. The coefficients have already been computed... Does the order of these two arrays change during the computation?
– Bright Chang
Nov 23 '18 at 6:58
If you have just these 2 lists, order them for the graph. I've added some code to the answer, try it and see if it works
– Joe
Nov 23 '18 at 7:03
You are welcome, dont forget to acecpt the answer :) meta.stackexchange.com/questions/5234/…
– Joe
Nov 23 '18 at 7:06
add a comment |
The pairs of x
and y
represent the points on your graph. With plt.plot() you join the points with a line. If the array x
is not in order, what you have is a line that goes back and forward across the graph. To avoid this you should order the x
array, and the y
accordly. Try with:
new_x, new_y = zip(*sorted(zip(x, y)))
plt.plot(new_x,new_y)
Thank you for your answer. But actually my x is fixed and y is just the output from a polynomial function based on x. The coefficients have already been computed... Does the order of these two arrays change during the computation?
– Bright Chang
Nov 23 '18 at 6:58
If you have just these 2 lists, order them for the graph. I've added some code to the answer, try it and see if it works
– Joe
Nov 23 '18 at 7:03
You are welcome, dont forget to acecpt the answer :) meta.stackexchange.com/questions/5234/…
– Joe
Nov 23 '18 at 7:06
add a comment |
The pairs of x
and y
represent the points on your graph. With plt.plot() you join the points with a line. If the array x
is not in order, what you have is a line that goes back and forward across the graph. To avoid this you should order the x
array, and the y
accordly. Try with:
new_x, new_y = zip(*sorted(zip(x, y)))
plt.plot(new_x,new_y)
The pairs of x
and y
represent the points on your graph. With plt.plot() you join the points with a line. If the array x
is not in order, what you have is a line that goes back and forward across the graph. To avoid this you should order the x
array, and the y
accordly. Try with:
new_x, new_y = zip(*sorted(zip(x, y)))
plt.plot(new_x,new_y)
edited Nov 23 '18 at 7:03
answered Nov 23 '18 at 6:53
JoeJoe
6,11421630
6,11421630
Thank you for your answer. But actually my x is fixed and y is just the output from a polynomial function based on x. The coefficients have already been computed... Does the order of these two arrays change during the computation?
– Bright Chang
Nov 23 '18 at 6:58
If you have just these 2 lists, order them for the graph. I've added some code to the answer, try it and see if it works
– Joe
Nov 23 '18 at 7:03
You are welcome, dont forget to acecpt the answer :) meta.stackexchange.com/questions/5234/…
– Joe
Nov 23 '18 at 7:06
add a comment |
Thank you for your answer. But actually my x is fixed and y is just the output from a polynomial function based on x. The coefficients have already been computed... Does the order of these two arrays change during the computation?
– Bright Chang
Nov 23 '18 at 6:58
If you have just these 2 lists, order them for the graph. I've added some code to the answer, try it and see if it works
– Joe
Nov 23 '18 at 7:03
You are welcome, dont forget to acecpt the answer :) meta.stackexchange.com/questions/5234/…
– Joe
Nov 23 '18 at 7:06
Thank you for your answer. But actually my x is fixed and y is just the output from a polynomial function based on x. The coefficients have already been computed... Does the order of these two arrays change during the computation?
– Bright Chang
Nov 23 '18 at 6:58
Thank you for your answer. But actually my x is fixed and y is just the output from a polynomial function based on x. The coefficients have already been computed... Does the order of these two arrays change during the computation?
– Bright Chang
Nov 23 '18 at 6:58
If you have just these 2 lists, order them for the graph. I've added some code to the answer, try it and see if it works
– Joe
Nov 23 '18 at 7:03
If you have just these 2 lists, order them for the graph. I've added some code to the answer, try it and see if it works
– Joe
Nov 23 '18 at 7:03
You are welcome, dont forget to acecpt the answer :) meta.stackexchange.com/questions/5234/…
– Joe
Nov 23 '18 at 7:06
You are welcome, dont forget to acecpt the answer :) meta.stackexchange.com/questions/5234/…
– Joe
Nov 23 '18 at 7:06
add a comment |
Thanks for contributing an answer to Stack Overflow!
- 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%2fstackoverflow.com%2fquestions%2f53441874%2fstrange-plot-created-based-on-two-numpy-arrays-and-matplotlib%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