Bir web sayfasında dinamik olarak çok temel akış diyagramlarını, yani satırların birleştirdiği birkaç kutuyu işlemek istiyorum. İdeal olarak kullanıcı daha sonra bu kutulardan birini (DIV'ler) tıklayabilir ve farklı bir sayfaya götürebilir. Flash için Resorting bir overkill gibi görünüyor. Bunu gerçekleştirmeye yardımcı olabilecek herhangi bir istemci tarafı (yani sunucu agnostiği) Javascript veya CSS kütüphanesi/tekniğinin farkında olan var mı?Javascript/CSS'de temel akış diyagramlarını oluşturmak için bir kütüphane var mı?
8
A
cevap
1
Oluşturma istemci tarafında mı olmalı? bunu sunucu tarafı yapabiliyorsa
http://ejohn.org/blog/processingjs/
ardından Graphviz iyi bir seçimdir:
evet ise, İşleme deneyebilirsin.
0
akış şeması Bu tür overkill olabilir JavaScript grafik kütüphaneleri başvurmadan, (tuval) CSS kullanarak gerçekleştirilebilir. Bazı soybilim sitelerinin aile ağacı almak için bunu nasıl yaptığını kontrol etmek isteyebilirsiniz.
1
Bulunan en iyi ve en basit, js-graph.it.
Ayrıca bu yararlı özelliği de vardır: deciding the orientation of the flow. Örneğin, benim durumumda bir belge iş akışım var, bu yüzden sağ tarafa doğru akması gerekiyor.
Daha da basit bir alternatif wz_jsGraphics. Benim durumumda şu şekilde okları çiziyorum:
/**Draw an arrow made of 3 lines.
* Requires wz_jsGraphics (http://www.walterzorn.de/en/jsgraphics/jsgraphics_e.htm).
* @canvas a jsGraphics object used as canvas
* @blockFrom id of the object from which the arrow starts
* @blockTo id of the object where the arrow ends with a arrowhead
*/
function drawArrow(canvas, blockFrom, blockTo){
//blocks
var f = $("#" + blockFrom);
var t = $("#" + blockTo);
//lines positions and measures
var p1 = { left: f.position().left + f.outerWidth(), top: f.position().top + f.outerHeight()/2 };
var p4 = { left: t.position().left, top: t.position().top + t.outerHeight()/2 };
var mediumX = Math.abs(p4.left - p1.left)/2;
var p2 = { left: p1.left + mediumX, top: p1.top };
var p3 = { left: p1.left + mediumX, top: p4.top };
//line A
canvas.drawLine(p1.left, p1.top, p2.left, p2.top);
//line B
canvas.drawLine(p2.left, p2.top, p3.left, p3.top);
//line C
canvas.drawLine(p3.left, p3.top, p4.left, p4.top);
//arrowhead
canvas.drawLine(p4.left - 7, p4.top - 4, p4.left, p4.top);
canvas.drawLine(p4.left - 7, p4.top + 4, p4.left, p4.top);
}
var jg = new jsGraphics('myCanvasDiv');
drawArrow(jg, 'myFirstBlock', 'mySecondBlock');
jg.paint();
İlgili konular
- 1. Bir karar ağacı oluşturmak için kütüphane
- 2. PDF'lerden şifreleri programlı olarak kaldırmak için bir kütüphane var mı?
- 3. addr2line'a kütüphane çağrısı var mı?
- 4. İlkel tür değerlerini karşılaştırmak için bir kütüphane var mı?
- 5. Otomatik olarak CSS yazımı yapmak için bir kütüphane var mı?
- 6. VB.NET kullanarak .Z dosyalarını açmak için bir kütüphane var mı?
- 7. Bir kütüphane için Makefile
- 8. Bir sihirbaz oluşturmak için herhangi bir desen var mı?
- 9. Dizgeden eleman yaratmayı kolaylaştıran herhangi bir kütüphane var mı?
- 10. Tastypie'nin API anahtarları oluşturmak için yardımcı bir işlevi var mı?
- 11. Excel tabloları oluşturmak için ortak bir lisp kütüphanesi var mı?
- 12. Konsol uygulaması oluşturmak için bir maven kemer türü var mı?
- 13. WADL dosyası oluşturmak için herhangi bir araç var mı?
- 14. Bu Haskell sorununa standart bir kütüphane çözümü var mı?
- 15. JSON nesnelerini ağaçlar olarak oluşturacak basit bir kütüphane var mı?
- 16. Bir ARC uygulamasında ARC olmayan kütüphane var mı?
- 17. Görüntülerde Hareket Bulanıklığını Algılayabilecek Bir Algoritma veya Kütüphane Var mı?
- 18. java Ben Akış var
- 19. Akış manipülatörlerini birleştirmenin iyi bir yolu var mı?
- 20. Python'da bir jeneratör işlevini bir listeye döndüren bir işleve dönüştürmek için bir kütüphane işlevi var mı?
- 21. SQL Server 2005'te veritabanı diyagramlarını diğer formatlara dönüştürmenin herhangi bir yolu var mı?
- 22. Php için bir omniauth var mı?
- 23. sokak düzeyinde bir harita görüntüleyebilir matplotlib temel haritaları gibi bir kütüphane var?
- 24. Verileri Temel Veri'den Çevrimiçi Veritabanına geçirmenin bir yolu var mı?
- 25. Scala'nın bir seçenekte null değer döndürmek için bir kütüphane yöntemi var mı?
- 26. Java: Aşağıdaki gibi diyagramlar oluşturmak için hangi kütüphane kullanılır?
- 27. Java için iyi desteklenen bir besleme oluşturma kitaplığı var mı?
- 28. .NET C#: System.Int64 bir temel tür System.ValueType var mı?
- 29. Temel T4 şablonlarında işlevlere sahip olmanın bir yolu var mı?
- 30. Java veri yapısı nasıl oluşturulur? Mevcut kütüphane var mı?