0

晚上好

对于编码练习,我正在使用 matplotlib 生成一个图。让 f 是一个实值函数(这对我的问题并不重要)。我现在的 xticks 间距有问题,因为 n(数据量)变大了。你知道如何让它在一定程度上适应吗?

import matplotlib.pyplot as plt
import numpy as np

n = # positive integer, specified by user in console

x = [m for m in range(1,n+1)]
y = [f(i) for i in x]

plt.plot(x, y)
plt.title("Berechnungszeitdiagramm für die Funktion")
plt.xlim(1,n)
plt.xticks([i for i in range(1,n+1)])
plt.xlabel("n")
plt.ylim(0,np.max(vector)+1)
plt.ylabel("Berechnungszeit (in ns)")
plt.grid()

为了说明我的问题,请考虑以下生成图的 x 轴:

绘制 n=15

绘制 n=100

4

1 回答 1

0

我认为您可以plt.xticks按如下方式编辑您的列表理解:

plt.xticks([i for i in range(1, n+1, stepsize)])

其中stepsize是一个整数。如果你总是想要 15 个刻度,你可以设置stepsize = n // 15例如

于 2021-03-06T17:05:33.020 回答