如何更改Python绘图中的x轴标签?

如何更改Python绘图中的x轴标签?,python,matplotlib,Python,Matplotlib,我有以下代码: import numpy as np import pylab as plt a = np.array([1,2,3,4,5,6,7,8,9,10]) b = np.exp(a) plt.plot(a,b,'.') plt.show() 代码运行良好,但我需要修改绘图的x轴标签。 根据a轴输入,我希望x轴标签都是10的幂。对于示例代码,它类似于[10^1,10^2,…,10^10] 如果有任何建议,我将不胜感激 谢谢大家! 这段代码可能就是您需要的: import numpy

我有以下代码:

import numpy as np
import pylab as plt

a = np.array([1,2,3,4,5,6,7,8,9,10])
b = np.exp(a)
plt.plot(a,b,'.')
plt.show()
代码运行良好,但我需要修改绘图的x轴标签。 根据
a
轴输入,我希望x轴标签都是10的幂。对于示例代码,它类似于[10^1,10^2,…,10^10]

如果有任何建议,我将不胜感激


谢谢大家!

这段代码可能就是您需要的:

import numpy as np
import pylab as plt

a = np.array([1,2,3,4,5,6,7,8,9,10])
# this is it, but better use floats like 10.0, 
# a integer might not hold values that big
b = 10.0 ** a 
plt.plot(a,b,'.')
plt.show()
import numpy as np
import pylab as plt

a = np.asarray([1,2,3,4,5,6,7,8,9,10])
b = np.exp(a)
c = np.asarray([10**i for i in a])
print(list(zip(a,c)))
plt.xticks(a, c)
plt.plot(a,b,'.')
plt.show()

通过使用
plt.xtick()
可以自定义绘图的x标签。我还将
10^I
替换为
10**I

一旦你从a中创建了b,就不要给plot()一个作为参数的数组,而要给另一个数组c,它包含10的幂,你可以试试这个
c=np.array([10^I代表a中的I])
,但我看不到10^1和其他数组