Extension:Graph/Guide/tr

Bu sayfa, topluluğun uzantısını kullanarak en iyi uygulamaları yazması içindir. Ayrıca  bakınız

Grafikleri maddelerden ayrı tutun
Grafikler maddenin içinde saklanabilse de, bunları ayrı şablonlar olarak saklamak çok daha iyi bir yaklaşımdır, ör. 'Template:Graph:&lt;yourgraphname&gt; eklenebilir

Grafikleri özelleştirilebilir yapın
Grafik ayarlarını doğrudan grafiğin içine yerleştirebilseniz bile, bunu yapmak genellikle kötü bir tasarımdır. Grafikler, farklı veri ve stil kümeleriyle birden çok maddede yeniden kullanılabilen esnek şablonlar olarak yapılmalıdır. Örneğin, grafiğin genişliği ve yüksekliği sabit kodlanmış olsa bile:

kolay özelleştirmeye izin verecek şekilde varsayılan değerlerle şablon parametreleri olarak yapılmalıdır:

Verileri grafikten ayrı tutun

 * Yukarıdaki stil gibi, verilerin kendisi de grafikte saklanmamalıdır. Bir grafikten yararlanabilecek büyük bir tablo içeren bir sayfayı düşünelim, ör. en pahalı resimlerin listesi. Sayfa, verilerle oldukça karmaşık bir tablo içerir:

Bir grafik oluşturmanın basit yaklaşımı, gerekli verileri çıkarmak ve grafiği bu verilerle tablonun yanına yerleştirmektir. Bu işe yarayacak olsa da, bu yaklaşım pek iyi değil çünkü artık aynı verinin iki kopyası var ve bir şey değiştiğinde her ikisinin de güncellenmesi gerekiyor. Ayrıca, grafik metnin içindeyse, madde daha da uzar ve grafik kodu ve verilerle dolar. Daha az kişi onu düzenleyebilir. Grafik ayrı bir şablona yerleştirilirse, editörlerin verileri değiştirirken güncellemeyi unutmaları daha olasıdır.

Doğru çözüm, başlangıçta biraz daha zor olmasına rağmen, çok daha ileriye dönük ve yönetilmesi daha kolay bir yol sağlayacaktır ve tüm bu tür listeler için yeniden kullanılabilir.


 * 1) Ham verilerle, tercihen JSON biçiminde ayrı bir sayfa oluşturun. Bu dosyanın yapısı, listenin ihtiyaç duyduğu verilere göre belirlenir.
 * 2) Bu ham verileri iyi biçimlendirilmiş bir viki tablosuna dönüştüren bir işleve sahip bir Lua modülü oluşturun.
 * 3) Aynı Lua modülünde, grafik için gerekli verileri çıkaran ve JSON biçimli veriler olarak çıkış veren başka bir işlev oluşturun.
 * 4) Yukarıdaki verileri kullanabilen ve grafiğini çizebilen grafik şablonunu oluşturun
 * 5) Son olarak, bu iki pasajı liste sayfasına ekleyin:

verileri içeren iyi biçimlendirilmiş tablo ekler:

aynı verilerle grafik ekler:

Dış Veriler
Grafik verileri grafik tanımının içine gömülebilir veya bir  bağlantısı üzerinden sağlanabilir. Standart Vega'dan farklı olarak, grafik etiketi tüm harici bağlantıların özel viki protokollerinden birini kullanmasını gerektirir:


 * - Gets tabular dataset from Commons. Should be used with  (or "meta" or "fields"). The data given to the graph is already localized to the wiki language.

For example, this dataset would be given to the graph in this format:


 * - Gets map dataset from Commons. Should be used with  (can also use "meta" to get the same information as for tabular). The data given to the graph is already localized to the wiki language.
 * - Gets File:Einstein_1921.jpg image from Commons for an image mark. It is always recommended to add  (and/or height) to make the image the right size and reduce server load.
 * OBSOLETE, use wikifile: instead  - Grafik için bir resim alın, ör. Commons'dan. Bu etiket, sorgu parametreleri olmadan uploads.* etki alanındaki herhangi bir içeriği belirtir. Dosya yolunu ve resminin isteğe bağlı boyutunu almak için dosya yolu sihirli anahtar sözcüğünü kullanın.
 * - Yolun sayfanın başlığı olduğu bir viki sayfasının ham içeriğini alın. Alan adı isteğe bağlıdır ve belirtilirse, en.wikipedia.org, commons.wikimedia.org,... gibi herhangi bir Wikimedia sunucusu olabilir.
 * - Get data from the MediaWiki API. The domain is optional.
 * - Call to RESTbase API. The domain is optional.
 * or  - Get geoshapes (as topojson) of the given regions, using Wikidata IDs, or a URL-encoded query (in SPARQL), with "id" column specifying geoshapes to get.
 * - Makes a link to the map snapshot service, so that a static map can be drawn for a given location/zoom/size. Parameters are converted it into a snapshot image request for Kartotherian - https://maps.wikimedia.org/img/{style},{zoom},{lat},{lon},{width}x{height}@2x.png

Reminder about nested template parameters
Templates require you to separate nested template parameters by at least one character, otherwise the graph with simply not display and you will get a syntax error. Be careful!

"values": // will not render "values": // will render, notice the whitespace in the closing braces

Using double curly braces in the graphs
Vega 2 supports template parameters, such as, but MediaWiki will attempt to find "indexDate" template and transclude it. To avoid this, use \u007b instead of the first curly brace, \u007d instead of the last closing curly brace, and the | instead of the pipe symbol " ":

Debugging

 * The best place to develop and debug is in the Graph Sandbox. Copy JSON code to see the graph change in real time as you type. Graph sandbox understands json comments and expands wiki markup.  See the bottom right panel for the converted JSON.
 * To get the graph JSON from a template, click edit / page preview, and use browser's debugger to inspect the graph (even if it is not showing) - you should see the .  Copy the hash value, hit escape (in Chrome), and use this oneliner to show the JSON. Remove first and last quote, ad copy/paste to the Vega editor above.