Bootstrap引入echarts图表如何自动适应col-*容器

发布于 2022-09-05 23:22:48 字数 1644 浏览 14 评论 0

       <div class="container">
            <div class="row">
                <div class="col-xs-6">
                    <div class="panel panel-default">
                        <!-- Default panel contents -->
                        <div class="panel-heading">网站统计</div>
                        <div class="panel-body">
                            
                        </div>

                    </div>
                    
                </div>
                <div class="col-xs-6">                 
                        <canvas id="canvas"></canvas>                                 
                </div>
            </div>
        </div>
var myChart = echarts.init(document.getElementById('canvas'));

option = {
    
    title: {
        text: '今天访问数量'
    },
    tooltip: {},
    legend: {
        data:['访问量'],      
    },
    xAxis: {
        data: ["星期一","星期二","星期三","星期四","星期五","星期六","星期日"]
    },
    yAxis: {},
    series: [{
        name: '访问量',
        type: 'bar',
        data: [5, 20, 36, 10, 10, 20,80]
    }]
    
};
myChart.setOption(option);
window.onresize = function() {
            //重置容器高宽
            resizemyChartContainer();
            myChart.resize();
};

我之前搜了一些方法,说要监听容器,每当容器改变就需要重置图表高度,
而且boostrap的容器不是有内容才可以撑起宽高吗?如果直接一个canvas标签,又没有指定高度,它如何才能自适应?
图下,我无论怎么缩放它都是固定的大小了,
5PDQmYfeTdyMhkPcjZaffQ.png

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

我偏爱纯白色 2022-09-12 23:22:48

我建议你把容易canvas改成div,这样才能够使用echarts提供的方法,进行响应式。
<div id="canvas" style="width: 100%;height:200px;"></div>
高度可以根据需求进行设置,我这里是设置为200px;

鸩远一方 2022-09-12 23:22:48
window.onresize = function() {  
char.resize();  
};
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文