echart柱状图拼接table,每列对齐,并自适应的问题

先上效果图,如下:

要点:

  1. echart的div和table的div宽度都是98%,左边的margin为2%。
  2. echart柱状图设置左右的距离是100px和50px,左边的100px是留给表格第一列的。echart 3设置grid的left和right为100px和50px,因为要拼接,bottom设置为0。
    grid: {
        left: '100px',
        right: '50px',
        bottom: 0
    }
  3. 整个表格的宽度为calc(98%-50px),第一列的宽度为98px,剩余12列每列的宽度为calc((100%-98px)/12),为了保证每格等间距,需要给表格设置table-layout: fixed;样式。
    .echart-table{color: #fff; width: 100%; border:0; border-collapse:collapse; table-layout: fixed;}
    .echart-table > thead > tr > th{text-align: center; border: 1px solid #017081;}
    .echart-table > thead > tr > th:first-child{border: none; width: 98px;}
    .echart-table > thead > tr > th:not(first-child){width:calc((100% - 98px) / 12);}
    .echart-table > tbody > tr > td{text-align: center; border: 1px solid #017081;}
    .echart-table > tbody > tr > td:first-child{width: 98px;}
    .echart-table > tbody > tr > td:not(first-child){width:calc((100% - 98px) / 12);}
  4. table随着浏览器窗口的收缩能够自适应,echart需要给图标添加监控事件来达到自适应。
    window.addEventListener("resize", function () {
        myChart.resize();
    });
  5. 为了保证浏览器窗口收缩的时候,table与echart图表对齐,echart图表左右的距离必须用px不能用%,这是对齐的关键。

如需完整代码可以到我的下载中下载。

echart柱状图可以通过设置文字大小和柱状图宽度的自适应来适应不同屏幕的宽度。为了实现这个效果,可以使用计算比例函数来根据比例调整文字大小和柱状图宽度。比例函数的代码如下所示:[1] ``` function fontSize(res) { let clientWidth = window.innerWidth || document.documentElement.clientWidth || document.body.clientWidth; if (!clientWidth) return; let fontSize = 100 * (clientWidth / 1920); return res * fontSize; } ``` 在echart图表中,可以使用该计算比例函数来设置文字大小和柱状图宽度。例如,在设置图表标题时可以使用该函数来调整文字大小,代码如下所示: ``` title: { text: '折线图堆叠1233标题', textStyle: { fontSize: fontSize(0.28) // 28px就写0.28 } } ``` 通过这种方式,echart柱状图可以根据浏览器页面的宽度自动调整文字大小和柱状图宽度,实现屏幕自适应的效果。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* *2* *3* [echart文字大小和柱状图宽度自适应浏览器页面宽度,根据比例自适应文字大小和柱状图宽度](https://blog.csdn.net/guo_qiangqiang/article/details/128083421)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 100%"] [ .reference_list ]
评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值