Google图表工具 - 重叠标签

时间:2012-11-06 15:31:23

标签: javascript google-api google-visualization

我正在使用谷歌图表工具显示一个简单的折线图,原因不明,无论我如何设置“图例”参数,标签都会重叠。在下面的屏幕截图中,您可以看到legend: {position: 'in', alignment:'center'}的结果。如何解决这个问题?The labels are overlapping

3 个答案:

答案 0 :(得分:9)

  

" ..当人们普遍抱怨标签重叠时,由于试图在一个看不见的容器中画画。我们目前不支持这一点,因此您需要确保在绘制图表时您的容器不显示:none。" - 谢尔盖

链接:https://groups.google.com/forum/#!topic/google-visualization-api/c-KpZk--8p0

答案 1 :(得分:1)

我在一个相当复杂的页面底部附近加载了一个图表,这个问题就开始了。我决定在页面加载后执行图表的创建,以便为父div提供渲染时间。 $(document).ready(function(){ makeChart(data); }) 并且父div的css具有固定的高度&宽度。

希望这有帮助!

答案 2 :(得分:0)

我当时在弹出窗口上渲染图形,标签重叠。我尝试在$(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函数进行渲染对我来说很有效