2014-04-22 89 views
2

一直喜歡Python中的新ggplot模塊,但我無法將我的y標籤格式化爲百分比而不是小數。以下代碼生成以下圖像。請注意,labels ='percent'代碼不會生成預期的格式。Python ggplot格式的軸號以百分比不起作用

plot = ggplot(aes(x='Date', y='return', color='Stocks'),data=rx) +\ 
geom_line() +\ 
scale_x_date(breaks=date_breaks('1 day'), labels='%b %d %Y') +\ 
scale_y_continuous(labels= 'percent') +\ 
ylab('Cumulative Return') + ggtitle('S&P Sector Performance') 

enter image description here

+0

兩個想法:1)的百分比函數在秤包;是否已經加載/附加了/無論Python中等價於'library(「scales」)'的命名是什麼? 2)嘗試在'percent'附近沒有引號;他們沒有必要,但他們可能會被允許(不要隨意回憶)。 –

+0

我知道它來自'音階'音樂庫,但認爲我曾見過ex,但它可能是R的ggplot2。我檢查了yhat的例子,並意識到它們沒有顯示它,所以你可能是正確的,因爲'scale'庫尚未被移植。 Python需要引號。然而,奇怪的是,大多數其他尺度格式化工作,包括'逗號'和'數百萬'等。 – BCR

+0

如果用'percent_format()'替換''percent'',會發生什麼? –

回答

2

這是現在在0.5.3版本(我只是把這個)。

>>> from ggplot import * 
>>> import numpy as np 
>>> import pandas as pd 
>>> df = pd.DataFrame({ "x": np.arange(0, 10), "y": np.arange(0, 1, 0.1) }) 
>>> ggplot(df, aes(x='x', y='y')) +\ 
... geom_point() +\ 
... scale_y_continuous(labels='percent') 

ggplot scale_x_continuous percent

+0

謝謝你工作完美! – BCR