2017-01-21 48 views
8

Ben django görünümlerinde (veya model?) Etkileşimli çizim yapmak istiyorum. Diyelim ki selection_histogram example. 'u kullanmak istiyorum. Bokeh'in ihtiyaçlarımı karşıladığını düşünüyorum, çünkü yeniden kullanabileceğim matplot/seaborn'um var ve javascript'te pek iyi değilim.Etkileşimli bir Bokeh'i django görünümlerine gömün

Bu örneği takip etmemde herhangi bir sorun yoktu: how to embed standalone bokeh graphs into django templates. Anlıyorum gibi

, bir bokeh sunucusu ve bir Django görünüm içine bir interaktif bokeh arsa gömebilirsiniz nasıl make some proxy using nginx

çalıştırmak gerekir?

def simple_chart(request): 

    script = autoload_server(model=None, 
          app_path="/selection_histogram", 
          url="http://localhost:5006/") 


    return render(request, "simple_chart.html", {"the_script": script}) 

views.py benim bakış beklendiği gibi Şimdi, etkileşimli

bokeh serve --allow-websocket-origin=127.0.0.1:8001 selection_histogram.py 

Güncelleme

başlatın bokeh sunucusu:

Bu çalıştı.

Bok uygulamasına bazı argümanları iletmenin bir yolu var mı?

Herhangi bir yardım takdir edilecektir. Saygılar

+0

Sorunuzu açıklığa kavuşturmak için, django şablonunuza gereçler veya form girişleri oluşturup daha sonra bokeh sunucusuyla iletişim kurmasını isteyin (örneğin çiziminizin ölçeğini veya veri değerlerini değiştirmek için)? Eğer öyleyse, bu benim sahip olduğum bir soruna benzer ve ben çözüm bokeh.js içinde yatıyor, ama henüz bunun için iyi bir örnek anlamaya düşünüyorum. –

+1

Merhaba, Etkinliğinizi Gitter'de gördüm. Django veri kümesinde bir bokeh pencere öğesi oluşturmayı başardım. Sorunum, her iki sunucunun da birbiriyle nasıl konuştuğudur. –

+0

Etkileşimli tarafından ne kastettiğinizi açıklar mısınız? 1. Araçlar çalışmalıdır (yakınlaştırma, kaydırma, gezinme vb.) Veya 2. Veriler ve grafikler yeni sayfa isteği olmadan da güncellenmelidir – renzop

cevap

1

DJANGO'da Bokeh'i kullanmak için bir Bokeh sunucusu çalıştırmanız gerekmiyor. Bokeh'i yalnızca size import edebilirsiniz.

Şablonunuza Bokeh js ve css'yi yüklemeniz ve Bokeh tarafından oluşturulan bileşenleri oluşturmanız gerekir. this'un kısa bir örnek olduğunu düşünüyor.

+1

Cevabınız için teşekkür ederiz. Örnek, aynı soruya da değindim. Bu basit örnek "statik" dir. Yapması muhtemel matplolib kullanabilirim. Sorumu daha spesifik olacak şekilde düzenleyeceğim. –

+0

Ah Tamam, o zaman hangi sunucuların ne tür bir etkileşim gerektirdiğini anlamıyorum :) –

İlgili konular