看起来,当我在我的频率范围内绘制SNR数据点时,最终的频率值仍然停留在前一个频率值旁边。有没有人见过这个问题,或者有解决方案?
# Plot the SNR values
plt.figure(figsize=(15,6)) # Create a new figure object
plt.plot(frequency, SNR, label='SNR', marker='.')
plt.xlabel('Frequency [MHz]')
plt.ylabel('SNR')
plt.title('SNR vs Frequency')
plt.xticks(rotation=90)
字符串
我试过调整长度的情节,这有助于分离的x轴标签,但没有固定的最终标签
的数据
2条答案
按热度按时间pjngdqdw1#
由于某种原因,x轴值的间距不是均匀的。Matplotlib的自动收报机功能被搞混了。拟定解决方案:尝试添加这一行:
plt.gca().xaxis.set_major_locator(ticker.MaxNLocator(integer=True, nbins=10))
以强制适当的收报机间距。您可以根据需要调整箱数(nbins
)。您的完整代码将变为:
字符串
byqmnocz2#
这段代码部分解决了这个问题:
字符串
此循环使前三个标签可见,然后继续标记每隔一个频率