2014-01-17 112 views

回答

5

您可以在軸上設置格式器,例如FormatStrFormatter

簡單的例子:

import matplotlib.pyplot as plt 
import matplotlib.ticker as ticker 


plt.plot([10, 20, 30], [1, 3, 2]) 
axes = plt.gca() 
axes.get_xaxis().set_major_locator(ticker.MultipleLocator(1)) 
axes.get_xaxis().set_major_formatter(ticker.FormatStrFormatter("%x")) 
plt.show() 
+1

非常感謝! – user3207230

1

64位的機器,我得到,因爲類型不匹配的錯誤上使用Python 3.5。

TypeError: %x format: an integer is required, not numpy.float64 

我周圍使用函數格式,以便能夠轉換爲整數。

import matplotlib.pyplot as plt 
import matplotlib.ticker as ticker 

def to_hex(x, pos): 
    return '%x' % int(x) 

fmt = ticker.FuncFormatter(to_hex) 

plt.plot([10, 20, 30], [1, 3, 2]) 
axes = plt.gca() 
axes.get_xaxis().set_major_locator(ticker.MultipleLocator(1)) 
axes.get_xaxis().set_major_formatter(fmt) 
plt.show()