我必须绘制的一些数据的坐标如(20, 0 ),(10, 0 )等...基本上有些点属于x轴。
问题是,这些点被轴隐藏;即标记在线后面,因此无法正常看到。
以下是我的身材示例:http://i.stack.imgur.com/FNcob.png
有人有想法解决这个问题吗?我的想法已经不在了......
感谢。
尤
答案 0 :(得分:4)
默认情况下,Matplotlib“捕捉”情节限制为“整数”(因子为2,5,10,100等)。这通常意味着您的数据可能会在情节的边界上结束。
ax.margins
允许您在此自动缩放之前添加填充因子以计算绘图。这是避免绘图边界上的点问题的快速方法。
作为问题的一个简单例子:
import matplotlib.pyplot as plt
x, y = [0, 10, 20], [10, 0, 0]
fig, ax = plt.subplots()
ax.plot(x, y, 'ko')
plt.show()
一个简单的解决方案:
import matplotlib.pyplot as plt
x, y = [0, 10, 20], [10, 0, 0]
fig, ax = plt.subplots()
ax.plot(x, y, 'ko')
# Pad by 5% of the data range before autoscaling:
ax.margins(0.05)
plt.show()