python matplotlib f(x ^ 2)图 由 秋香先生发布于 2020-04-09 06:59:23 纯粹出于好奇,我想知道为什么会发生以下情况。我只是在做一些展示指数函数的基本图解,但结果却很奇怪: import numpy as np import matplotlib.pyplot as plt plt.plot(np.arange(0, 1000000, 1)**2) plt.show()
您正在达到可以将数字存储为整数的极限。在我的机器上,该数组作为int32生成,最多可以存储数字2147483483647,其平方根为46340.95,该数字远低于范围中的最大值。
因此numpy将值回滚到可以由int存储的最小值,达到最大值,然后再次进行回滚。它的频率增加,因为您正在对指数建模,并且数字越来越大。
如果将dtype更改为int64,则将获得期望的完整指数曲线。