.NET grafik kitaplığı var mı? [kapalı]


92

.Net için Grafik kitaplıkları arıyorum. Herhangi bir çıkış var mı?

ps: GRAPH kitaplıklarını kastediyorum, grafikler veya çizelge kitaplıkları değil!

düzenleme: Demek istediğim, grafik teorisinden grafiklerdir: (kaynak: sourceforge.net )alternatif metin

Ayrıca çizim kabiliyetine de ihtiyacım var.



Resim bağlantısı bozuk görünüyor (şimdi başka bir şeye yönlendiriyor)
UuDdLrLrSs

Yanıtlar:


44

QuickGraph ( GitHub , CodePlex ) ve WPF ( GitHub fork , CodePlex ) için Graph # kombinasyonunu kullanın - her ikisi de birinci sınıf kitaplıklar. Benim için gerçekten iyi çalışıyorlar ama Graph # için dokümantasyon neredeyse yok.


16

NDepend takımında çalışıyorum ve Eylül 2008'de GraphViz'den MsAgl'e ( Microsoft Automatic Graph Layout ) geçtik. MsAgl lisansı ticari kullanıma izin veriyor. İşte NDepend'e entegre edilmiş MsAgl grafiklerinin birkaç örnek resmi (her şey etkileşimli, düğümler taşınabilir / seçilebilir / çıkarılabilir / tıklanabilir, kenarlar düzenlenebilir / seçilebilir / çıkarılabilir / tıklanabilir, düzen yakınlaştırılabilir ve ayrıca daha temiz olabilir) MsAgl API, çalışmak için yeterince temiz):

görüntü açıklamasını buraya girin görüntü açıklamasını buraya girin görüntü açıklamasını buraya girin


Ayrıca AGL oynayabilir miyim rise4fun.com/Agl orada diğerlerinden grafikleri ve bkz rise4fun.com/rest/samples/rss/Agl
George Birbilis

2
MSAGL'nin artık GitHub: github.com/Microsoft/automatic-graph-layout adresinde MIT lisansı altında Açık Kaynak olduğunu ve yakın zamanda Silverlight sürümü için bazı düzeltmeler yapıldığından beri korunuyor gibi göründüğünü
unutmayın

Bahsettiğim Rise4Fun sitesinde AGL'yi denemekle ilgili olarak, beyin fırtınası için basit bir seçenek olabilir, ancak grafiği yalnızca metin biçiminde giriyorsunuz ve düğümler için kullandığınız etiketler bu metin sözdiziminde kimlik olarak kullanılıyor, yani sanırım grafikte iki yerde aynı etikete sahip bir düğüm (örneğin House) olamaz. Yükseliş4fun.com/Agl/fsm adresinde gösterilen sözdizimini kullanarak grafiğin kenarları için de etiketler (bağlantılar için) kullanabilirsiniz (orada OYNAT düğmesine basın ve ardından hangi grafiğin oluşturulduğunu görmek için aşağı kaydırın)
George Birbilis

Kararlı bir ikili sürümü nereden indirebilirim? Bilinmeyen kalitede her kaynağı inşa etmek istemiyorum.
Thomas Weller

Sanırım burada github.com/Microsoft/automatic-graph-layout ikili sürümün dahil edilip edilmediğinden emin değil
NDepend ekibinden Patrick

12

Bir önceki yazım silindiğinde soruya daha karmaşık cevaplar vermeye çalışacağım. En üstteki yanıt, Grafik # kitaplığı son derece güncel olmadığı için artık pek gerçek değil.

Ben kombinasyonunu kontrol etmek tavsiye edeceğiz GRAPHX ve Quickgraph . Oluşturma motoru olarak GraphX ​​ve grafik yönetimi ve matematik işlem bileşeni olarak Quickgraph.

GrpahX kitaplığı WPF 4.0 ve METRO için kodlanmıştır. Graph #'da bulunmayan birçok özellik sağlar:

  • Büyük grafikler için iyileştirilmiş oluşturma performansı
  • Kenar yönlendirme ve gruplama desteği, diğer birçok kenar seçeneği
  • Genel Bakış penceresini ve birden çok köşe seçimini destekleyen gelişmiş yakınlaştırma kontrolü
  • Zengin belgeler ve örnekler

Ayrıca GraphX, Graph #'daki tüm orijinal yerleşim algoritmalarını destekler. Herhangi bir sorunuz varsa lütfen http://panthernet.ru/forum adresini ziyaret edin !


GraphX ​​bağlantısı öldü.
xabush

Hayır, sadece barındırmada virüslerle ilgili ciddi sorunlar yaşadım. Forumlar çevrimiçidir.
Alexander Smirnov

9

Orada QuickGraph oldukça iyi çalışıyor ve temel algoritmaların çoğu vardır.


Güzel ama grafikleri çizecek gibi görünmüyor.
09:15

2
Doğru. Grafikleri çizmek yerine bunlarla hesaplama hakkında sorduğunuz izlenimini edindim. Yine de birkaç farklı işleme aracı tarafından tüketilen formatlara çıktı verir.
Doug McClean


5

NodeXL API'yi Microsoft Research'ten şu adresten kullanabilirsiniz: http://www.codeplex.com/NodeXL, ancak benzer bir soru şu adreste sorulmuştur: /programming/44090/do-you-know-any -graph-visualization-libraries-for-net /


Kulağa hoş geliyor, ancak şimdi örneklerinden gördüğüm kadarıyla, temelde her şeyi kendi başınıza çizmeniz gerekiyor gibi görünüyor, bu da benim çizmem gereken binlerce düğüm olduğu için sorun olur.
elysium yiyip

'Her şeyi kendi başınıza çizmek' ile ne demek istediğinizden tam olarak emin değilim, NodeXL hem Excel için bir uzantı hem de .Net için bir API'dir ve kuvvet yönlendirmeli düzen (Fruchterman-Reingold veya Harel-Koren) gibi grafik düzenleri algoritmalarını destekler. hızlı çoklu ölçek) veya geometrik bir düzen (daire, ızgara, spiral vb.). Kendim kullandım ve çok fazla 'manuel' çalışma yok
DrDee

Başka bir şeyden bahsediyordum, farklı bir cevapla kafam karıştı. Ama NodeXL için Office 2007 gerekiyor gibi görünüyor. Benim kurulu ofisim bile yok.
13'te elysium yiyip

Bunu zaten yükledim. Şimdi onu c # 'dan nasıl kullanacağım?
24'te elysium yiyip

Office Excel uzantısını değil, API kitaplığını yüklediğinizden emin olun. API mevcuttur: codeplex.com/NodeXL/Release/... O iki en olduğunu düşünüyorum (ithalat Microsoft.NodeXL.Core ithalat Microsoft.NodeXL.Visualization: Kullanmakta içe böylece NodeXL The ad Microsoft.NodeXL olduğunu önemli kütüphaneler). IDE'nizin yolunun NodeXL klasörünü içerdiğinden emin olun.
DrDee

3

Henüz denemedim, ancak yönlendirilmiş grafikleri görselleştirmek için MS Research'ten ilginç bir teklifle karşılaştım Microsoft Otomatik Grafik Düzeni .

Arama terimleri için "yönlendirilmiş grafik" veya "digraph" kullanmayı deneyin. Çok fazla hit alıyorum.


3

Satsuma'ya bir göz atın . C # ile yazılmış, esas olarak grafik algoritmaları, ancak bazı temel grafik düzeni ve çizimi de var.


2

Check out http://quickgraph.codeplex.com/ Onlar DotViz ve Glee aracılığıyla görselleştirme için destek var.

Görselleştirme için ayrıca kontrol ederdim

http://flare.prefuse.org/

Flaş olmasına rağmen, çok ilginç görünüyor ve en azından ağaç görselleştirmeleri var, ancak bazı yönlendirilmemiş grafikleri ondan çıkarabilirsin.


0

Bu sadece bazı örnekler içermiyor mu veri toplama yapılarına dayanan grafik algoritma mu? Sorunun C ++ BGL kitaplığı ( boost.org/doc/libs/1_40_0/libs/graph/doc/index.html ) gibi bir şey istediğini tahmin etmiştim .
Pontus Gagge

Haklısın Pontus. Kullanım kılavuzu örneklerinde bir Graph sınıfı vardır ancak kitaplığın bir parçası değildir. Bunun üzerine inşa edilmiş bir örnek. Ve kaynağa bakarak, dağınık, eksik bir tane.
Paul Sasik

Ama kullanılabilir, iyi bir yaklaşım gibi .......
jjchiw

0

Buddy Bence bu ne ihtiyaç vardır!

Bu makale bir Genel Grafik Kitaplığı,% 100 C # sunar. Bu kütüphane, Boost Graph Library'yi (BGL) C ++ 'dan C #' a taşıma girişimidir.


1
Evet, ancak kod projesinin yorumlarında okuduklarımdan grafikleri çizmeye çalışırken birkaç sorunu var.
29'da elysium

0

C # ile yazılmış bir Açık Kaynak projesi olan ZedGraph'ı kullandık , böylece gerekli olduğunu düşündüğünüzde ince ayar yapabilirsiniz. Tarif ettiğinize çok yakın gibi gelen ihtiyaçlarımıza hizmet etti. Proje için oldukça iyi örnekler içeren bir wiki sitesi bile var .


Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.