2012-12-20 44 views
7

我想在pyplot中使用製表符。但是,製表符顯示的是正方形,而不是我需要的製表符空間。pyplot製表符字符

我的代碼是:

fig = pl.figure() 
fig.text(.1,.05, "test \t test", bbox=dict(facecolor='red', alpha=0.5)) 

有誰知道爲什麼不起作用?

回答

4

我很驚訝,pylab.show實際上顯示了一些空間,而不是你的廣場。但savefig不會嘗試變得聰明,並給出你所描述的。現在,一個標籤有多少個空格?這個問題沒有意義。對你來說是4嗎?我會爲我挑選4.2。這意味着你需要決定你要多少空格選項卡拿在你的文字,即:

fig = pylab.figure() 
text = "test \t test".replace("\t", " ") 
fig.text(.1,.05, text, bbox=dict(facecolor='red', alpha=0.5)) 

或者,也許你想簡單地使用「標準」公約擴大您的標籤:

text = "test \t test".expandtabs() 
+0

這是我嘗試過的一種解決方案,但並不能幫助標籤對齊。我正在使用這些標籤來「乾淨地」顯示數據列,這是使用它們的主要好處。 – user1220022

+0

我建議你發佈一個關於如何「乾淨地顯示數據列」的問題,然後,或者你檢查Matplotlib的畫廊(http://matplotlib.org/gallery.html)並尋找你需要的。 (該解決方案不涉及製表。) – EOL

+0

編輯答案怎麼樣? – mmgp