我想在频率上产生一些情节.我希望有一个x轴与上标符号,如here.
此外,我需要垂直线与垂直注释分开千赫和兆赫兹.
import numpy as np
import matplotlib.pyplot as plt
band = np.linspace(0,10**12,100)
y = band
plt.plot(band,y)
plt.xlabel('Frequencies')
plt.vlines(10**3, min(y), max(y),colors = 'black', label = 'kilo Hz')
plt.vlines(10**6, min(y), max(y),colors = 'black', label = 'mega Hz')
plt.legend()
plt.show()
我尝试使用ticker,但无法弄清楚如何设置它.我尝试按照some示例但遇到类似AttributeError的错误:’图’对象没有属性’ticklabel_format’
已经花了很多时间在上面,不知道如何前进.
一般来说,我需要以类似的方式格式化x轴,而不是plt.xscale(‘log’),但我想保持线性比例.
解决方法:
您可以将刻度标记定义为字符串并指定它们:
mport numpy as np
import matplotlib.pyplot as plt
band = np.linspace(0,10**12,100)
y = band
plt.plot(band,y)
plt.xlabel("Frequencies&