You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Google折线图小屏幕图例被截断,如何下移图例文本?

Google折线图移动端图例截断问题解决方法

我的Google折线图在移动浏览器或小屏幕上,顶部的图例出现截断情况(图例顶部文字被页面上边缘切掉),想知道如何调整图例位置避免截断。

原代码

function DashboardGraphAppointmentGrowth(statsData) {
    try {
        google.charts.load('current', {
            packages: ['line'],
            callback: function () {
                var data = new google.visualization.DataTable();
                data.addColumn('string', '');
                data.addColumn('number', 'Total Appointments');
                data.addColumn('number', 'Completed Appointments');

                for (var i = 0; i < statsData.length; i++) {
                    data.addRow([statsData[i].date, parseInt(statsData[i].total), parseInt(statsData[i].completedTotal)]);
                }

                var options = {
                    chart: {
                        title: '',
                        subtitle: ''
                    },
                    colors: ['#f4b400', '#4285f4'],
                    height: 350,
                    legend: {
                        position: 'top', maxLines: 3, textStyle: {
                            fontSize: 11.3,
                            color: '#000000',
                        }
                    },
                    vAxis: {
                        viewWindow: {
                            min: 0
                        }
                    }
                };

                var chart = new google.charts.Line(document.getElementById('graph_appointments_growth'));
                chart.draw(data, google.charts.Line.convertOptions(options));
            }
        });
    }
    catch (error) {
        console.log("Error : " + error);
    }
}

解决方法

可以通过以下几种方式调整布局解决截断问题:

  • 增加图表顶部边距+图例居中:给图表区域设置顶部边距,同时让图例居中,为图例留出足够显示空间:

    legend: {
        position: 'top',
        maxLines: 3,
        alignment: 'center', // 图例居中避免左右溢出
        textStyle: {
            fontSize: 11.3,
            color: '#000000',
        }
    },
    chartArea: {
        top: 40 // 调整顶部边距,数值可根据实际情况修改
    }
    
  • 优化图例换行与字体:如果图例项较多,缩小字体或调整换行行数,避免横向溢出导致截断:

    legend: {
        position: 'top',
        maxLines: 2, // 减少换行行数,优化单行列宽
        textStyle: {
            fontSize: 10, // 缩小字体节省空间
            color: '#000000',
        }
    }
    
  • 将图例移至底部:如果顶部空间始终不足,直接把图例改到彻底避免顶部截断:

    legend: {
        position: 'bottom',
        maxLines: 3,
        textStyle: {
            fontSize: 11.3,
            color: '#000000',
        }
    }
    

修改后的完整示例代码

function DashboardGraphAppointmentGrowth(statsData) {
    try {
        google.charts.load('current', {
            packages: ['line'],
            callback: function () {
                var data = new google.visualization.DataTable();
                data.addColumn('string', '');
                data.addColumn('number', 'Total Appointments');
                data.addColumn('number', 'Completed Appointments');

                for (var i = 0; i < statsData.length; i++) {
                    data.addRow([statsData[i].date, parseInt(statsData[i].total), parseInt(statsData[i].completedTotal)]);
                }

                var options = {
                    chart: {
                        title: '',
                        subtitle: ''
                    },
                    colors: ['#f4b400', '#4285f4'],
                    height: 350,
                    chartArea: {
                        top: 40
                    },
                    legend: {
                        position: 'top',
                        maxLines: 3,
                        alignment: 'center',
                        textStyle: {
                            fontSize: 11.3,
                            color: '#000000',
                        }
                    },
                    vAxis: {
                        viewWindow: {
                            min: 0
                        }
                    }
                };

                var chart = new google.charts.Line(document.getElementById('graph_appointments_growth'));
                chart.draw(data, google.charts.Line.convertOptions(options));
            }
        });
    }
    catch (error) {
        console.log("Error : " + error);
    }
}

内容的提问来源于stack exchange,提问作者chosenOne Thabs

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.18 11:06:19