Python 绘图问题

Python plotting issue

我写了下面的代码:

full_list = [0, 10**3, 10**6, 10**9, 10**12, 10**15]

list1 = []
list2 = []
list3 = []

for hash_power in full_list:
    x1 = Calc1()
    list1.append(x1)

    x2 = Calc2()
    list2.append(x2)

    x3 = Calc3()
    list3.append(x3)

fig = plt.figure()
ax = fig.add_subplot(111)
ax.plot(full_list,list1,'r-->',full_list,list2,'g--o',full_list,list3,'b--o')
plt.show()

图形生成时,x轴上的分布只生成第一个点和最后一个点,忽略中间full_list开始的所有点。

我知道范围很大,但是有什么办法可以显示吗?

如果您的坐标轴中有较大的数值 - 您可能需要考虑重新缩放图形坐标轴,使它们是对数的而不是线性的。在 this Whosebug thread.

中找到有关如何执行此操作的步骤

或者更简单地说,以非对数增量自定义图形轴上的比例,可以找到 in this thread