• byztpz

Biyolojik Bilimlerden Sosyal Bilimlere Ağ Analizi: Osmanlı Araştırmalarında Cytoscape Kullanımı

Güncelleme tarihi: 7 Mar

Beyza TOPUZ DEMİR

University of Antwerp, Doktora Öğrencisi


Ağ analizi, araştırmacılara çeşitli aktörler ve nesneler arasındaki ilişkileri görselleştirme ve analiz etme olanağı sağlayan bir dizi teknikten oluşan bir yöntemdir. Pek çok disiplin ağ analizi yöntemini kullanarak insanlar, nesneler, coğrafi yerler, hatta ilişkiler gibi muhtelif değişkenler arasındaki ilişki ve ilişki ağlarını düğümler (nodes) ve kenarlar/bağlar (edges) aracılığıyla görselleştirebilmektedir. Bu bağlamda Cytoscape ağ analizi ve görselleştirme için oldukça kullanışlı bir açık kaynaklı yazılım platformu olarak karşımıza çıkmaktadır. İlk olarak 2002 yılının temmuz ayında piyasa sürülen Cytoscape, başlangıçta biyolojik bilimler için tasarlanmış ancak daha sonraları sosyal bilimler gibi farklı disiplinlerin de kullanımına açık hale gelmiştir. Sosyal ağlar ve kişiler arası ilişkilerin yanı sıra sosyal bilimciler, tablolar, formlar ve web'de yer alan etkileşimleri görselleştirmek ve analiz etmek için de Cytoscape i kullanabilir. Cytoscape App Store daki uygulamalar ve R ve NetworkX gibi diğer yazılımları kullanarak gelişmiş özellikleri deneyimleyebilir ve daha sofistike görselleştirme ve analizler yapabilirsiniz. Bu blog yazımda, Cytoscape in temel özelliklerini 24 Numaralı İstanbul Kadı Sicil’inde yer alan İstanbul’daki hamallar ve kefilleri listelerinden derlediğim örnek bir görselleştirme üzerinden açıklamaya ve göstermeye çalışacağım.


Gelin, platforma daha yakından bakalım!


Source: Cytoscape website


Her şeyden önce, Cytoscape, üyelik gerektirmeyen, kullanıcı dostu, çok dilli, açık kaynaklı bir platformdur. Linux, Windows ve MacOS Cytoscape i çalıştırabilir. Resmi bir teyit olmamakla birlikte Java 8 sürümü mevcutsa, diğer UNIX platformları da Cytoscape i çalıştırabilir.


Introduction” butonuna tıklayarak Cytoscape ne olduğu, en son sürümünün özellikleri, örnek ekran görüntüleri üzerinden masaüstü arayüzü hakkında daha fazla bilgi edinebilirsiniz. Cytoscape masaüstü ve buluta indirilebilir. Ben bu yazımda genel hatlarıyla Cytoscape Masaüstü’nü açıklamaya çalışacağım. Cytoscape Product Roadmap üzerinden daha detaylı bilgiye erişebilirsiniz. Cytoscape Tutorials sayfasını ziyaret ederek hem temel düzey hem de ayrıntılı veri görselleştirme özellikleri, alıştırmalar, protokoller ve sunumlara ulaşabilirsiniz. Cytoscape 3.8.2 sürümünün kullanımı hakkında daha fazla bilgi için ayrıca Cytoscape 3.8.2 User Manual sayfasını ziyaret edebilirsiniz.


Başlamak için öncelikle Cytoscape en son sürümünü “Download” kısayoluna tıklayarak indirmelisiniz. Ana sayfada sol üstteki ikinci satırda bulunan “Download” sekmesine tıklayarak da indirme işlemini başlatabilirsiniz. Halihazırda yüklü değilse Java 11 de Cytoscape ile bilgisayarınıza indirilecektir. İndirme aşamasında bir sorun yaşarsanız, gerekli tüm talimatlar sitede ayrıca mevcuttur.

Kurulum tamamlandıktan sonra şimdi Cytoscape i başlatabilirsiniz!


Source: Cytoscape website


Cytoscape, şu biçimlerde yazılmış dosyalarını destekler: (i) Simple interaction file (SIF or .sif format), (ii) Nested network format (NNF or .nnf format), (iii) Graph Markup Language (GML or .gml format), (iv) XGMML (extensible graph markup and modelling language), (v) SBML, (vi) BioPAX, (vii) GraphML, (viii) Delimited text, (ix) Excel Workbook (.xls, .xlsx), (x) Cytoscape.js JSON, (xi) Cytoscape CX. Ben bu blog yazımdkai örnek çalışmam için Excel (.xls, .xlsx) çalışma sayfalarını kullandım.


Cytoscape Masaüstü, dilediğiniz zaman gösterebileceğiniz, gizleyebileceğiniz, sabitleyebileceğiniz, simge durumuna küçültebileceğiniz ve ayırabileceğiniz beş panele sahiptir: Control Panel (sol), Tools Panel (sol alt), Results Panel (sağ), Table Panel (sağ alt) ve Command Panel (alt). Her bir panelin kendi içinde farklı sekmeleri vardır. Tablo Paneli Düğüm, Kenar ve Ağ Tablolarını içerirken, örneğin Kontrol Panelinde Ağ, Stil, Filtre ve Açıklama sekmelerini görebilirsiniz.


Cytoscape i bilgisayarınızda açtığınızda aşağıdaki arayüzü göreceksiniz.


Araç Çubuğu, menüdeki sık kullanılan işlemlerin kısayollarını içerir. Fare imlecini birkaç saniye boyunca bir simgenin üzerinde tuttuğunuzda, ipucu olarak bir açıklama ekranda belirecektir. Seçtiğiniz düğümler ve kenarlar Tablo Panelinde gösterilir ve burada sütun değerlerini değiştirebilirsiniz. Ağ Görünümü, oluşturduğunuz ağınızı görüntüler. Ağ Görünümünün hemen altında aşağıdaki simgeler bulunur.

  1. Izgarayı Göster

  2. Ağı Göster

  3. Görünümü Ayır

  4. Dosyaya Aktar

  5. Her zaman Grafik Ayrıntısını Göster

  6. Düğüm Seçimini Aç/Kapat

  7. Kenar Seçimini Aç/Kapat

  8. Açıklama Seçimini Aç/Kapat

  9. Düğüm Etiketini Seçimini Aç/Kapat

  10. Navigatörü Gizle (“kuş bakışı”)

Buraya kadar Cytoscape hakkında genel bir fikrimiz oluştu ve masaüstü arayüzüne biraz aşina olduysak, şimdi bir örnek çalışma üzerinden yazılımın resimlerle nasıl kullanılacağını öğrenelim!


Cytoscape'de (i) biçimlendirilmiş ağ dosyalarını içe aktararak, (ii) biçimlendirilmemiş metin veya Excel dosyalarını içe aktararak, (iii) genel veri tabanlarından içe aktararak, (iv) boş bir ağ üzerinde manuel olarak düğümler ve kenarlar ekleyerek kendi ağlarınızı oluşturabilirsiniz. Ben daha önce hazırlamış olduğum bir Excel dosyasını içe aktarmayı tercih ettim. Bunun için sırasıyla “File” →“import” → “Table from File” tıklamanız gerekir.


Araç çubuğundaki simgesine tıklayarak da dosyanızı kolayca içe aktarabilirsiniz. Dosya seçme ekranını bu iki yoldan biriyle açtıktan sonra bilgisayarsızdan dosyanızı seçin ve “Open” butonuna basın.


Dosyanızı yüklediğinizde yeni bir seçme ekranı görünecektir. Şimdi, yeni bir ağ koleksiyonu mu oluşturmak yoksa mevcut bir ağ koleksiyonuna yeni bir ağ mı yüklemek istediğinize karar vermelisiniz. Bunun için açılır listeden seçiminizi yapın.


Dosyanızı yükledikten sonra, açılır ekrandaki sütunlara etkileşim parametreleri atamak için her bir sütun başlığına tıklayın. Sütun başlıklarının sağındaki oka tıklayarak her sütunun adını ve veri tipini değiştirebilirsiniz. Cytoscape, String, Boolean (Doğru/Yanlış), Integer, Floating Point ve List veri tiplerini destekler.


Sağ köşedeki “OK” tuşuna tıkladığınızda, ağınız Ağ Görünüm Panelinde görünecektir (sadece kaynak sütun belirtirseniz, kenarları olmayan bir düğüm listesine sahip olursunuz).


Varsayılan özellikler nedeniyle bazen tüm ağ görüntülenemeyebilir. Böyle bir durumla karşılaşırsanız panik yapmayın. Tüm ağı görmek için, "View" sekmesi altındaki “Fit Content” işlevini etkinleştirmeniz yeterlidir. Yakınlaştırmak ve uzaklaştırmak için araç çubuğundaki simgeleri de kullanabilirsiniz.


Cytoscape, ağları varsayılan stille oluşturur, ancak düğüm şekli, etiket rengi, yazı tipi boyutu ve daha pek çok stil özelliklerini kolayca değiştirebilirsiniz. Kontrol Panelinde “Style” sekmesine tıklayın ve aşağıdaki resimde kırmızı okla gösterilen açılır menüyü açın.


Açılır listeden yeni bir stil seçin.


Yine “Style” sekmesindeki “Properties” butonuna tıklayıp, dolgu rengini, etiket yazı tipini, etiket yazı tipi rengini, etiket konumunu, düğüm şeklini, kenarlık genişliğini vb. değiştirin. Burası tamamen sizin yaratıcılığınıza ve görsel tercihlerinize bağlı. Düğümleri Ağ Görünüm Panelinde manuel olarak sürükleyerek konumlarını düzenleyebilir veya sol alt kısımdaki "Layout Tools” kısmından düğümlerin ve kenarların konumlarını değiştirebilirsiniz.



Verilerinizi ve ağınızı vurgulamak veya ayırt etmek için düğümleri ayrıca seçerek renklerini değiştirebilirsiniz. Bunun için karışık gibi görünen ama aslında oldukça basit iki farklı yoldan birini kullanabilirsiniz: “Properties” ve “Table from File

Haydi ikisini de deneyelim!


Style” → “Properties” tıkladıktan sonra açılır pencereden değişiklik yapmak istediğiniz sütunu seçin.


Mapping Type” kısmı “Discrete Mapping” seçilmeli.


Şimdi, aşağıdaki olduğu gibi, düğüm renklerini değiştirmek için seçtiğiniz sütunun verilerini göreceksiniz. Sağa iki kez tıkladıktan sonra beliren görseldeki işaretli simgeye tıklayınız.


Açılan pencereden düğümlerin renklerini isteğinize göre seçiniz. Rengi seçtikten ve “OK” tıkladıktan sonra seçiminiz hemen sağdaki ağ üzerinde uygulanacaktır.


Düğümleriniz ve kenarlarınız için farklı renklendirme kullanmak çeşitli grup ilişkilerini analiz edebilmeniz için bazı alt ağları vurgulamanıza olanak tanır. Aşağıdaki ağ görüntüsü için sadece iki değişkeni olan “Kethüda” sütununu seçtim. Bu ağ temel olarak hangi kethüdanın farklı bölgelerde görev yapan farklı hamal grupları içinden hangi isimlere kefil olduklarını göstermektedir.


"Column" sekmesinden "names" sütununu seçip alfabetik olarak listelenen tüm adlar listesinden değiştirmek istediğiniz düğümleri manuel olarak da işaretleyebilirsiniz.


Düğümlerin rengini değiştirmenin ikinci yolu ise bir tabloyu içe aktarmaktır. Bir Excel sayfası oluşturun. Bu deneme için aşağıdaki gibi bir Excel sayfası oluşturdum. A sütunu oluşturmuş olduğum ağın düğümlerinin adlarını içermektedir. B sütunundaki 1 sayısı ise, farklı bir şekilde de belirtilmeye müsait bir değişkeni temsil eder.


Oluşturmuş olduğunu tabloyu içe aktarmak için sırasıyla şu adımları takip edin:

File” → “Import” → “Table from File” akabinde aktarmak istediğiniz Excel dosyanızı seçin ve “OK” butonuna tıklayın.


Karşınıza çıkan aşağıdaki açılır pencereden “Node Table Columns” ve “shared name” seçin ve ardından “OK” butonuna tıklayın.


Benim Excel dosyamdaki “Node Color Test” sütununda sadece bir değişken olduğu için düğüm renklendirmek için sadece bir seçenek görüyorsunuz.


Renk ayarını yaptıktan sonra ağım aşağıdaki gibi göründü. Kaynak (source) düğümler bir renkte (mor) ve hedef (target) düğümler ise başka bir renktedir (turuncu).


Arama çubuğu aracılığıyla doğrudan istediğiniz düğümler ve kenarları aratabilirsiniz. Arama yapmak istediğiniz kelimeyi sıfır veya daha fazla karakterle eşleşen bir joker karakter olan * ile yazarsanız, kelimeniz tüm sütunlarda aranır. Kelimenizi tırnak işareti içinde ("kelime") yazarak da tüm sütunları arama yapabilirsiniz, ancak bu şekilde yalnızca tam olarak eşleşenleri bulur. Önce sütun başlığınızı, ardından arama kelimenizi * ile yazarsanız, sadece belirtilen sütun içinde arama yapar. Aramalar büyük/küçük harfe duyarlı değildir. Daha iyi anlamak için arama yapmaya aşağıdaki görsellere birlikte bir göz atalım.




Aramanız ile eşleşen düğümlerin rengi sarıya ve kenarlar kırmızıya döner. Ardından düğümlerinizi gruplayabilirsiniz. Bunun için seçilen (sarı) düğümlerden birinin üzerine gelip sağ tıklayın ve "Group” → “Group Selected Nodes” seçin.


Artık “Mustafa” isimli düğümlerin gruplandırılmasını görebilirsiniz.


Kontrol Panelindeki "Filter" sekmesi, düğümleri ve kenarları filtrelemenize ve seçiminize göre bir alt ağ oluşturmanızı sağlar. “Column Filter,” “Degree Filter” ve “Topology Filter” olmak üzere üç farklı filtre seçeneği mevcuttur. Seçilen düğümler, tüm filtre seçeneklerinde yine sarı renge döner.


Sütun veri tipine göre “Column Filter” düğümleri ve kenarları belirli bir sütun değeriyle eşleştirmek için muhtelif seçenekler sunar. String veri tipi için beş farklı alternatif bulunmaktadır:

  • contains: metni içeren değerleri seçmek anlamına gelir

  • doesn’t contain: metni içermeyen değerleri seçmek anlamına gelir

  • is: metin ile tam olarak eşleşen değerleri seçmek anlamına gelir

  • is not: metin ile tam olarak eşleşmeyen değerleri seçmek anlamına gelir

  • regex: düzenli bir ifade ile eşleşen değerleri seçmek anlamına gelir (ayrıntılı filtrelemeler için)


Degree Filter” belirlenen bağlantı sayısına sahip ağları filtreler.


Topology Filter” belirli bir mesafedeki belirli sayıda komşusu olan ve bir alt filtresi olan düğümleri filtreler.


Yaptığınız filtrelemeden yeni bir ağ oluşturmak isterseniz şu adımları izleyin: “File” → “New Network” → “From Selected Nodes, All Edges


Ağınıza resim, şekil ve metin açıklamaları da ekleyebilirsiniz. Bunun için Ağ Görünümünde boş bir alana sağ tıklayın ve seçenekleri görmek için imlecinizi “Add” üzerinde birkaç saniye tutun.



Cytoscape’in daha pek çok özelliği olmasına rağmen bu yazımda son olarak size dosyalarınızı dışa nasıl aktaracağınızı göstereceğim. Elde etmiş olduğunuz ağları şu şekilde dışa aktarabilirsiniz:

  • Network to NDEx,

  • Collection to NDEx,

  • Network to File,

  • Network to Image

  • Network to Web Page

  • Table to File,

  • Styles to File


Gelin beraber ağlarınızı görüntü olarak JPEG (*.jpeg, *.jpg), PDF (*.pdf), PNG (*.png), PostScript (*.ps) ve SVG'de (*.svg) biçimlerinde nasıl kaydedebileceğinizi görelim:

Sırasıyla “File” → “Export” → “Network to Image” tıkladıktan sonra istediğiniz biçimi seçip ardından “OK” tıklayın.

Bunun için Araç Çubuğundaki dışa aktarma simgesini de tıklayabilirsiniz.


JPEG veya PNG formatlarında dışa aktarmak istediğiniz görüntünüzün daha iyi bir kaliteye sahip olması için lütfen "OK” tıkladıktan sonra otomatik olarak karşınıza çıkan penceredeki parametreleri ayarlayın.