2016-04-12 21 views
0

plotly kullanarak etkileşimli bir çizim oluşturmaya çalışıyorum ve X eksenini sipariş etme konusunda sorun yaşıyorum.X ekseni plotly kullanarak azalan sırada düzenleyin

import plotly.plotly as py 
import cufflinks as cf 
import pandas as pd 
import plotly.tools as tls 
tls.set_credentials_file(username='ladeeda', api_key='ladeeda') 

cf.set_config_file(offline=False, world_readable=True, theme='pearl') 

StudentModalityRetention[StudentModalityRetention['schoolyearsemester'] == 'Sem3']\ 
    .iplot(kind='bubble', x='branch', y='retention', size='active_users', text='active_users', 
      xTitle='', yTitle='Retention', 
      filename='cufflinks/Sem3ModalityRetention') 

ve burada üretilen arsa var: İşte kullanıyorum kodu

enter image description here

Ben emir veya Y ekseni azalan X eksenini düzenlemek istiyoruz. Başka bir deyişle, ilk olarak görünecek en yüksek Y değerine sahip olan balonu istiyorum ve bu şekilde ..

Herhangi bir yardım çok takdir edilecektir.

cevap

1

Amacınıza ulaşmak için basit ve etkili bir yol, pandalar veri çerçevesini gereksinimlerinize göre azalan sıraya göre sıralamak ve daha sonra istediğiniz sonucu verecek grafiği çizmek için iplot'u kullanmaktır.

yourdataframe.sort_values(by='Y',\ #column name or index values according to which the dataframe is to be sorted 
        axis=0,   #for column sorting 
        ascending=False, #in your case, for descending 
        inplace = True)\ #if you want to perform the operation inplace or return a new dataframe 
        .iplot(kind='bubble', x='branch', y='retention',size='active_users', text='active_users', 
        xTitle='', yTitle='Retention', 
        filename='cufflinks/Sem3ModalityRetention') 

Umut) :) Cevabınız için çok

+0

Teşekkür yardımcı olur: Burada kısa bir örnektir. 'Iplot' çağrısından hemen önce .sort_values ​​(axis = 'retention', yükselen = False, inplace = True) 'ı ekledim ve şu hatayı alıyorum: ' TypeError: sort_values ​​() en az 2 argüman alır (4 verilir) '. 4 tane tartışmam bile yok. Bunun neden olduğunu biliyor musun? – Patthebug

+0

@Patthebug sort_values ​​işlevinin çalışması için gerekli olan 'by' parametresini belirtmeyi unuttuğum için çok üzgünüm. Sütun sıralama için eksen her zaman 0 olacaktır. Sonuçları doğrulayabilirsiniz. Herhangi bir rahatsızlıktan dolayı özür dileriz. –

+0

Kapandı, sadece 'sort_values ​​(by = 'retention', artan = False) gerekiyordu. Özür dilemeye gerek yok, büyük yardımın vardı. Çok teşekkürler :). – Patthebug