Ich habe verstanden, dass Sie die Farbe für ein bestimmtes Element innerhalb der X-Achse ändern möchten.
Ich schaute auf die API, aber ich fand keine einfache Möglichkeit, es zu tun.
Da Sie einen Rückruf festlegen können für die "ready-Ereignis Chart":
Diagramm (Object Optionen, Funktion Rückruf):
Parameter
Optionen: Die Diagrammoptionen Objekt, dokumentiert unter der Überschrift "Das Optionsobjekt" im linken Menü.
Rückruf: Function
eine Funktion auszuführen, wenn das Diagrammobjekt Lade- und Darstellungs beendet ist. In meisten Fällen ist das Diagramm in einem Thread erstellt, aber in Internet Explorer Version 8 oder weniger das Diagramm wird manchmal initiiert, bevor das Dokument bereit ist, und in diesen Fällen wird das Diagrammobjekt nicht direkt nach dem Aufruf neuer Highcharts abgeschlossen .Diagramm(). Als Konsequenz sollte der Code , der auf dem neu erstellten Chart-Objekt beruht, immer im Callback ausgeführt werden. Das Definieren eines chart.event.load-Handlers ist gleichwertig.
Rückgabe: Eine Referenz auf das erstellte Chart-Objekt.
Sie können es in eine schmutzigen Art und Weise tun:
$(function() {
var chart = new Highcharts.Chart({
chart: {
renderTo: 'container',
marginBottom: 80
},
xAxis: {
categories: ['Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun', 'Jul', 'Aug', 'Sep', 'Oct', 'Nov', 'Dec'],
labels: {
style: {
color: 'red'
}
}
},
series: [{
data: [29.9, 71.5, 106.4, 129.2, 144.0, 176.0, 135.6, 148.5, 216.4, 194.1, 95.6, 54.4]
}]
},
function(c){
// this relies in that te xAxis is before the yAxis
// also, setting the color with color: #ABCDEA didn't work
// you have to use fill.
$(".highcharts-axis:first text").each(function(i, label){
var $label = $(label);
if($label.children().text() === "Jun") {
$label.css({fill: "blue"});
}
});
// You also can to something like:
$(".highcharts-axis:first text:eq(6)").css({fill: "green"});
})
});
Hoffnung, dies hilft Ihnen
danke! das hilft sehr! – ericbae
Ich fand, dass wenn das Kategorie-Label mehr als ein Wort war, nur das erste Wort das Styling erhalten würde. Dies ist anscheinend ein [Fehler in highcharts] (https://github.com/highslide-software/highcharts.com/issues/390) ab v2.3.2. Ein einfacher Patch wurde im Problemthread gepostet, der für mich funktioniert hat. – clayzermk1
Etwas, das für manche Leute vielleicht nicht sofort offensichtlich ist: Die gleiche Formatierungslogik kann auch für die "yAxis" -Etiketten angewendet werden. Ein Beispiel für eine solche Verwendung: Legen Sie für eine prozentuale Achse die Option "min: 0, minRange: 100" fest, und legen Sie mit dieser Option eine benutzerdefinierte Beschriftungsfarbe für alle Werte fest, die höher als 100% sind. – ZaLiTHkA