2017-10-16 9 views
1

Si j'utilise des valeurs de date pour la hAxis d'un diagramme à colonnes Google Maps, les étiquettes apparaissent sous le groupe de barres (voir photo ci-dessous). Cela n'arrive pas si j'utilise des chaînes. Google Chart Issue Est-ce que quelqu'un a trouvé comment faire apparaître l'étiquette de la date au centre sous chaque groupe de barres?Centrer des étiquettes de date sur Google Charts hAxis

Répondre

1

vous pouvez fournir votre propre ticks pour l'option hAxis ...

utiliser les dates à partir des données pour chaque tick/étiquette ...

var ticks = []; 
for (var i = 0; i < data.getNumberOfRows(); i++) { 
    ticks.push(data.getValue(i, 0)); 
} 

puis attribuez-lui dans les options ...

hAxis: { 
    ticks: ticks 
}, 

voir ci-dessous extrait de travail ...

google.charts.load('current', { 
 
    packages: ['corechart'] 
 
}).then(function() { 
 
    var data = new google.visualization.DataTable(); 
 
    data.addColumn('date', 'x'); 
 
    data.addColumn('number', 'y0'); 
 
    data.addColumn('number', 'y1'); 
 
    data.addRows([ 
 
    [new Date(2017, 07, 08), 200, 210], 
 
    [new Date(2017, 07, 15), 190, 220], 
 
    [new Date(2017, 07, 22), 205, 200] 
 
    ]); 
 

 
    var ticks = []; 
 
    for (var i = 0; i < data.getNumberOfRows(); i++) { 
 
     ticks.push(data.getValue(i, 0)); 
 
    } 
 

 
    var chart = new google.visualization.ColumnChart(document.getElementById('chart_div')); 
 
    chart.draw(data, { 
 
    chartArea: { 
 
     bottom: 24, 
 
     height: '100%', 
 
     left: 48, 
 
     right: 96, 
 
     top: 24, 
 
     width: '100%' 
 
    }, 
 
    hAxis: { 
 
     ticks: ticks 
 
    }, 
 
    height: '100%', 
 
    title: 'Title', 
 
    width: '100%' 
 
    }); 
 
});
<script src="https://www.gstatic.com/charts/loader.js"></script> 
 
<div id="chart_div"></div>

+0

Il a aidé en effet, grâce @whitehat! La différence majeure est maintenant que le tick est entre les barres, de sorte que les étiquettes hAxis sont centrées autour des tiques et, bien sûr, sous les barres. Assez bon pour ce dont j'ai besoin! À votre santé! –