gpt4 book ai didi

python - 更改绘图上的轴值

转载 作者:行者123 更新时间:2023-12-01 06:08:59 26 4
gpt4 key购买 nike

如何更改一个轴上的数据?

我正在对一些数据进行频谱分析,我的 x 轴是某个矩阵的索引。我想更改它,使 x 轴成为数据本身。

我正在使用 imshow() 来绘制数据(我有一个矩阵,其元素是某种强度,y 轴是它们的探测器-源对应对,x 轴应该是它们的频率)。

它的代码写在这里:

def pltspec(dOD, self):
idx = 0
b = plt.psd(dOD[:,idx],Fs=self.fs,NFFT=512)
B = np.zeros((2*len(self.Chan),len(b[0])))
for idx in range(2*len(self.Chan)):
b = plt.psd(dOD[:,idx],Fs=self.fs,NFFT=512)
B[idx,:] = 20*log10(b[0])
fig = plt.figure()
ax = fig.add_subplot(111)
plt.imshow(B, origin = 'lower')
plt.colorbar()
locs, labels = xticks(find(b[1]), b[1])
plt.axis('tight')
ax.xaxis.set_major_locator(MaxNLocator(5))

我认为如果有一种方法可以将某个数组的索引与其值互换,我的问题就可以解决。

我已成功使用行locs, labels = xticks(find(b[1]), b[1])。但在我的图表上,我的轴间隔就不正确...我认为这与 MaxNLocator (我用来减少刻度数)有关。

如果我使用xlim,我可以将数字设置为我想要的,但x轴仍然相同(在xlim上我必须使用原始数据来设置它)。

我做错了什么?

最佳答案

是的,您可以使用 example 中示例的 xticks 方法.

还有更复杂的方法可以做到这一点。请参阅 ticker

关于python - 更改绘图上的轴值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6751955/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com