2016-07-08 1 views
0

주식 정보가있는 데이터 프레임을 만들었습니다. 산점도를 작성하고 레이블에 주석을 달려면 모든 레이블이 포함되는 것은 아닙니다. 나는 단지 50 점에서 3 점 밖에 얻지 못합니다. 왜 모든 레이블을 그려 내지는 못하는지 알 수 없습니다..annotate()가 모든 레이블을 플롯하지 않습니다

내 테이블 :

 Dividend ExpenseRatio Net_Assets PriceEarnings PriceSales 
Ticker 
FHLC  0.0128   0.08  6.056   22.95  1.78 
ONEQ  0.0083   0.21  6.284   20.24  2.26 
FTEC  0.0143   0.08  3.909   20.83  2.73 
FDIS  0.0144   0.08  2.227   20.17  1.36 
FENY  0.0262   0.08  4.386   25.97  1.34 

내 플로팅 번호 :

for ticker,row in df.iterrows():  
    plt.scatter(row['PriceSales'], row['PriceEarnings'], c = np.random.rand(3,1), s = 300) 


for i, txt in enumerate(ticker): 
    plt.annotate(df.index[i-1], (df.PriceSales[i-1], df.PriceEarnings[i-1])) 

plt.xlabel('PriceSales') 
plt.ylabel('PriceEarnings') 
plt.show() 

내 그래프 이미지 :

enter image description here

답변

2

시세 여기서 시세의 값을 갖는 것입니다 마지막 행. 예 : 'FENY' 열거 (ticker)를 호출하면 각 문자에 대한 항목이 생성되므로 마지막 시세 표시기에 3 개의 항목이있는 것처럼 들립니다.

나는 당신이 산포도와 같은 루프 포인트를 주석을 달 수 있습니다 생각 :

for ticker,row in df.iterrows():  
    plt.scatter(row['PriceSales'], row['PriceEarnings'], c = np.random.rand(3,1), s = 300) 
    plt.annotate(ticker, (row['PriceSales'], row['PriceEarnings'])) 
+0

루프 노동자에 포함된다. 그렇게 생각하지 않았다는 것을 믿을 수는 없지만 해결책을 가져 주셔서 감사합니다! – Evy555

관련 문제