2016-04-12 13 views
3

Birçok noktaların aynı veya çok benzer değerlere sahip olacağı bir Highcharts balon grafiğim var. Şu anda sadece en üst noktadaki veri etiketi görülebilir. Noktaların vurgulanmasını sağlayan işlevselliğe sahibim (select() yöntemini kullanarak). Bir nokta seçildiğinde, point.graphic.toFront()'u kullanarak onu en üste taşıyorum, ancak seçilen noktanın veri etiketinin de üstüne taşınmasını istiyorum. Bunu nasıl yapacağımı ya da mümkün ise anlayamıyorum.Highcharts Bubble Chart - Bir noktanın veri etiketini (dataLabel) önden/üste nasıl taşıyacaksınız

Bir noktanın veri etiketini görülebilmesi için ön/üst noktaya taşımanın bir yolu var mı?

Veri etiketlerinin çakışmasına izin veren bir ayar olduğunu biliyorum, ancak bu yapmak istediğim şey değil. Çakışan noktalar için sadece en üstteki veri etiketinin gösterildiği mevcut işlevselliği korumak istiyorum, ancak hangi nokta/veri etiketinin üstünde olduğunu programlı olarak kontrol edebilmeyi istiyorum. Noktanın veri etiketinin z dizinini ayarlamayı denedim, ancak hiçbir şey yapmadı.

+0

Eğer jsFiddle gibi canlı bir örneğini gönderir misiniz? Varolan kod üzerinde çalışmak daha hızlı olacaktır, tekrar yazmaktan daha iyidir. –

+0

@KacperMadej burada çok basit bir örnek: http://jsfiddle.net/jlbriggs/3d3fuhbb/136/ (Daha önce bir şeyler çalışmayı denedim, ama çok uzağa gitmedim) "A" önde, "B" gizli . "B" nasıl öncelik kazanır? – jlbriggs

+0

Üzgünüm, bir jsFiddle sağlamadım. Bunun gerekmeyeceğini umuyordum, ama bana bu jlbriggs konusunda yardımcı olduğunuz için çok teşekkür ederim. – jbgarr

cevap

2

Eğer labelrank'ı point özelliği olarak tanımlarsanız, etiketler örtüştüğünde etiket gizleme/gösterme özelliğini kontrol etmenizi sağlar.

data: [{ 
     x: 1, y: 1, labelrank: 1, name: 'A' 
     },{ 
     x: 1, y: 1, labelrank: 2, name: 'B' 
     }] 
    }] 

Örnek: http://jsfiddle.net/x5sfcekL/

+0

Bu harika! Dokümanlardaki "labelrank" bilgisi nerede? Bundan hiç bahsetmedim. Her iki durumda da, bu konuda yardım için çok teşekkürler. Sorunumu çözdü. – jbgarr

+1

Güzel. Ve sadece bir not - her noktaya atama atlamak gibi görünüyor ve sadece üstüne yazmak istediğiniz bir çakışma var noktaları üzerinde güncellemek gibi görünüyor, en üstte istediğiniz noktayı ayarlayarak 1. – jlbriggs

+1

(Bu tam olarak aslında) Yaptığım şeyleri. Gelecekte referans olması için benim için yararlı olan güncelleme kodunun önemli kısmı: 'point.update ({labelrank: 1})' – jbgarr