「凡例」パラメータをどのように設定しても、不明な理由でラベルが重なるため、Googleグラフツールを使用して単純な線グラフを表示しています。以下のスクリーンショットでは、の結果を確認できますlegend: {position: 'in', alignment:'center'}
。これを回避する方法は?
3 に答える
「..ラベルが重なっているとよく言われるのは、非表示のコンテナーを描画しようとしたことが原因です。現在、これはサポートされていないため、グラフを描画するときにコンテナーが display:none でないことを確認する必要があります。」- セルゲイ
リンク: https://groups.google.com/forum/#!topic/google-visualization-api/c-KpZk--8p0
かなり複雑なページの下部近くにチャートをロードしたところ、この問題が発生しました。親 div をレンダリングする時間を与えるために、ページが読み込まれた後にグラフの作成を実行することにしました。
$(document).ready(function(){
makeChart(data);
})
また、親 div の css の高さと幅は固定されていました。
お役に立てれば!
ポップアップでグラフをレンダリングしていましたが、ラベルが重なっています。でレンダリングを実行しようとしましたが、何$(document).ready()
もうまくいき$(window).load()
ませんでした。
クリック イベントで、ポップアップが表示されます。
$(document).ready(function()
{
$('.view_graphs').click(function(){
setTimeout(function(){
renderGraph();
},500)
})
})
function renderGraph() {
google.charts.setOnLoadCallback(column_chart);
function column_chart() {
var data = new google.visualization.arrayToDataTable(<?php echo $visitlang_json_data ?>);
var chart = new google.visualization.ColumnChart(document.getElementById('visit_lang_chart'));
var options = {'title':'Report based on language',
'width':600,
'height':500
};
chart.draw(data,options);
}
}
setTimeout
クリックイベントの関数でレンダリングするとうまくいきました