在以下生成对数-对数图的代码中,python选择了一个不显示散点图上的点的x范围
/qn
此外,如果您改用以下代码,则可以正常运行:
import matplotlib.pyplot as plt
plt.scatter([.005,.005],[1,2])
plt.xscale('log')
plt.yscale('log')
plt.show()
通常,python会为x和y值选择合适的范围。为什么在这种情况下不这样做?
请注意,我知道可以更改x和y范围,以便不使用默认值。我的问题是专门询问为什么python在这种情况下不能选择合适的范围。
谢谢
我看来这是Why does matplotlib require setting log scale before plt.scatter() but not plt.plot()?的副本
对于阅读本文的任何人,请让我知道我是否应该删除此问题,或者您是否建议其他问题。谢谢
答案 0 :(得分:1)
从各种线程(this issue,this issue,this issue,this question)来看,我们可以得出结论,这是一个需要解决的问题。 ...但仅当您需要在绘图后 之后设置比例尺时。
如果在绘图前 设置比例尺,则没问题:
import matplotlib.pyplot as plt
plt.xscale('log')
plt.yscale('log')
plt.scatter([.005,.005],[1,2])
plt.show()