繁体   English   中英

matplotlib - 范围之间的值绘制在 plot 之外

[英]matplotlib - values between range are plotted outside of the plot

我有以下 y, x 值:

1.0 0.06
1.0 0.09
1.0 0.12
1.0 0.16
1.0 0.19
1.0 0.22
1.0 0.25
1.0 0.28
1.0 0.31
1.0 0.34
1.0 0.38
1.0 0.41
1.0 0.44
1.0 0.47
1.0 0.5
1.0 0.53
1.0 0.56
0.95 0.56
0.95 0.59
0.95 0.62
0.95 0.66
0.96 0.69
0.96 0.72
0.96 0.75
0.96 0.78
0.93 0.78
0.93 0.81
0.93 0.84
0.93 0.88
0.94 0.91
0.94 0.94
0.91 0.94

我想要的只是 plot plot 中的那些 Y、X 值,刻度从 0 到 1,步长为 1。

这是我试过的:

import matplotlib.pyplot as plt
import numpy as np
fig, ax = plt.subplots()

ax.grid()

ax.set_xticks([0,.1,.2,.3, .4, .5, .6, .7, .8, .9, 1])
ax.set_yticks([0,.1,.2,.3, .4, .5, .6, .7, .8, .9, 1])

ax.plot(r, p)

plt.show()

这是我得到的:

图片链接

这就是我按原样运行您的代码时得到的:

import matplotlib.pyplot as plt
import numpy as np
arr = np.array([[1.0, 0.06],
[1.0, 0.09],
[1.0, 0.12],
[1.0, 0.16],
[1.0, 0.19],
[1.0, 0.22],
[1.0, 0.25],
[1.0, 0.28],
[1.0, 0.31],
[1.0, 0.34],
[1.0, 0.38],
[1.0, 0.41],
[1.0, 0.44],
[1.0, 0.47],
[1.0, 0.5],
[1.0, 0.53],
[1.0, 0.56],
[0.95, 0.56],
[0.95, 0.59],
[0.95, 0.62],
[0.95, 0.66],
[0.96, 0.69],
[0.96, 0.72],
[0.96, 0.75],
[0.96, 0.78],
[0.93, 0.78],
[0.93, 0.81],
[0.93, 0.84],
[0.93, 0.88],
[0.94, 0.91],
[0.94, 0.94],
[0.91, 0.94],])

fig, ax = plt.subplots()

ax.grid()

ax.plot(arr[:, 0], arr[:, 1])

ax.set_xticks([0,.1,.2,.3, .4, .5, .6, .7, .8, .9, 1])
ax.set_yticks([0,.1,.2,.3, .4, .5, .6, .7, .8, .9, 1])

plt.show()

output:

在此处输入图像描述

答案:您在显示的代码之外的某个地方有一个错误,也许您正在绘制的值不是您在问题中显示的值。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM