2017-05-17 66 views
0

這個問題是關於在matplotlib中用xticks - Python繪圖。使用交錯xticks在Python matplotlib中繪圖

可以說我有三個矢量:

X = [1,2,3,4,5]具有相應標籤LVEC = [A,B,C,d,E] Y = [1, 2,3,4,5]

我想繪製X,Y,但提供來自LVEC的交錯xticks(即,只有a,c,e標籤顯示在圖上)。但是,該圖應該包含所有五個數據點。這可能是本地的嗎?

回答

0

如果我理解正確,這應該給你你想要的效果。

fig, ax = plt.subplots() 
ax.scatter(X,Y, c='white',edgecolors='None') 
for i, txt in enumerate(LVEC): 
    ax.annotate(txt, (X[i],Y[i])) 
1

這應該工作:

import matplotlib.pylab as pl 

X = [ 1,2,3,4,5 ] 
LVEC = ['a','b','c','d','e'] 
Y = [1,2,3,4,5] 

pl.figure() 
ax=pl.subplot(111) # or pl.gca() or similar 
pl.plot(X, Y, '-x') 
ax.set_xticks([X[0],X[2],X[4]]) 
ax.set_xticklabels([LVEC[0],LVEC[2],LVEC[4]]) 

因此,主要的竅門是先指定標籤應與set_xticks發生的x位置,並與旁邊的set_xticklabels覆蓋的標籤。