使用Etarts(来自百度),我想把一个饼图放在一个div元素中(我使用的是bootstrap)。
所以我有:
<div class="row">
<div class="col-md-4">
<div id="chartGift" style="height:400px;"></div>
</div>
</div>
我从官方文档www.example.com中获取了javascript代码https://ecomfe.github.io/echarts/doc/example/pie1.html#-en
问题是饼图没有出现,因为检查html代码,我看到宽度为0。为什么echarts不从父元素设置宽度?我不想设置静态宽度(我看到它工作),因为图表没有响应。
5条答案
按热度按时间busg9geu1#
如果你只想设置一个固定的高度,请尝试将宽度设置为容器的100%,并设置一个最小高度:
它对我很有效!另外,如果你想确保图表是响应性的,你可以知道窗口的大小是什么时候调整的,并强制图表也调整大小。像这样:
希望它有帮助!
eh57zj3b2#
我在购买的管理模板中找到了解决方案。有一个解决方案是在加载内容后初始化图表。下面是工作示例:
图表容器的样式为:高度:400 px;宽度:100%;这很重要,当你在使用echart工具箱的时候。它喜欢走出容器。
我希望它能有所帮助:)
u2nhd7ah3#
只需使用ResizeObserver来检测图表容器元素大小的变化。即使布局发生变化,它也能工作,并且不依赖于窗口大小等。顺便说一句,如果需要,Polyfill也可用。
zzwlnbp84#
这对我很有效。最小宽度:100%的效果。
t1rydlwq5#
设置
width: 100%
会导致echarts以节点大小(100px)出现,而设置min-width: 100%
则根本不会出现。所以这是相对css单位的问题。但是我们仍然可以使用JS设置图表容器的大小。