Protovis vs D3.js | Netgez.com
SORU
2 HAZÄ°RAN 2011, PERÅžEMBE


Protovis vs D3.js

TLDR: herkes & D3.js hem protovis deneyime sahip ikisi arasındaki farkları aydınlatan Mu?

Son 2 haftadır protovis ile oynuyorum ve her şey çok güzeldi. Şimdi dışında animasyon ile bir tuğla duvar bir gem vurmak gibi görünüyor.

protovis: http://vis.stanford.edu/protovis/

Oldukça basit ama daha kolay daha geliyor protovis ile bazı animasyon yapmak istiyorum - protovis hiç animasyon için bir anlamı olduğunu düşünmeye başladım. Yani D3.js bakmaya başladım:

http://mbostock.github.com/d3/ex/stack.html

Çok benzer görünüyor, ama:

  • Daha hafif görünüyor
  • DiÄŸer DOM elemanları ile etkileÅŸim için tasarlanmış gibi SVG görünüyor
  • Anlaşılan animasyonlar eklemek için tasarlanmış

Başka farklılıklar aydınlatabilir mi?

Her türlü giriş için çok minnettar olurum

CEVAP
2 HAZÄ°RAN 2011, PERÅžEMBE


Protovis ve D3 ile bir kaç şey ile çalışma adil bir miktar yaptım. Söz puan ek olarak, aşağıdaki farklılıkları benim için dikkat çekiyor bence

  • Nerede Protovis saÄŸlar basitleÅŸtirilmiÅŸ bir soyutlama katmanı arasındaki görsel özellikleri olduÄŸunu belirterek, D3 kullanan gerçek CSS ve DOM gözlük - yerine .width(10) .fillStyle('#00C') ... .style('width', 10) .attr('fill', '#00C'). Bu örneklerde, fark oldukça saçmadır, ama SVG görüntüde bir çizgi gibi bir ÅŸey yaptığın zaman, büyük farklılıklar vardır. Sonucu kullanarak D3 hissedebilirsin, biraz daha alt seviyede - daha fazla kontrol, ama güzel olmak zorunda aÅŸina SVG sözdizimi için bazı ÅŸeyler Protovis yapar çok daha kolay.

  • Not olarak, Protovis tüm D3 DOM diÄŸer parçaları kullanmak varken SVG iÅŸlenmiÅŸ. Bu, SVG tabanlı görsel öğeler gerektirmeyen görsel öğeler için, SVG desteklemeyen tarayıcılar bile D3 kullanabileceÄŸiniz anlamına gelir. Ayrıca çok daha kolay ÅŸeyler için gerçekten güzel olan HTML entegre ve aynı görselleÅŸtirme SVG, metin (metin düzenleme ve düzeni Protovis oldukça zayıftır) ile ilgili gibi olacağı anlamına geliyor.

  • D3 veya ölçekler ve veri iÅŸleme gibi temel Protovis araçlardan bazı deÄŸiÅŸiklikler düşer. .nest() iki kütüphaneler arasında paylaÅŸtırılır gibi olsa pv.sum() pv.mean() gibi temel kamu hizmetlerini D3 benzerleri yok tekrar tekrar rahatsız ediyorum.10/1/12 düzenleme:D3 veri yardımcı doldurdu ama hala Protovis birkaç içerir ve D3 deÄŸil, örneÄŸin*, **7 8* pv.repeat vardır. Muhtemelen daha az genellikle yararlı kabul edildi çünkü terk edildi.

  • D3 asenkron istekler için yarar saÄŸlar. Protovis bu istediÄŸim zaman, ben genellikle harici bir kütüphane (jQuery gibi) kullanmak zorunda.

  • D3 API belgelerineneredeyse tamamen eksikeksik, Protovis için oldukça detaylı dokümanlar ile karşılaÅŸtırıldığında.Düzenle (8/30/13): D3 ÅŸimdi bu noktada artık önemli deÄŸil 13 ** vardır.

  • Son olarak, çok animasyon ile yapmadım, ama tamamen doÄŸru - D3 saÄŸlar Protovis daha fazla animasyon desteÄŸi, özellikle animasyonlu geçiÅŸler açısından olduÄŸunu düşünüyorum. Protovis yeniden oluÅŸturmak bazı veya tüm görselleÅŸtirme talep, ama yok destek için Atlama bir sınırlı süreli bir animasyon - sen kodu herkes tarafından el ile setInterval. D3 bu kütüphanenin çok daha ayrılmaz bir parçası gibi görünüyor.

Düzenle (7/12/11): Yeni büyük bir fark var gibi görünüyor - Haziran 28, 2011, Protovis etkin geliştirme altında artık, Protovis takım yerine D3.js bastırıyor. Son sürüm bu kullanmaya engel olmamalıdır oldukça kararlı, ama kesinlikle alınması gereken bir nokta.

Bunu PaylaÅŸ:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VÄ°DEO

Rastgele Yazarlar

  • ★ByScrapi★ Designs

    ★ByScrapiâ

    27 AÄžUSTOS 2013
  • Jonathan Leack

    Jonathan Lea

    26 ÅžUBAT 2007
  • MisterBrightside

    MisterBright

    24 Mart 2006

Ä°LGÄ°LÄ° SORU / CEVAPLAR