我一直在尝试,因为一些天来,使一个饼图从highcharts响应。我正在做一个中等大小的项目,有时很容易失去概述。
我已经查过了http://www.angulartutorial.net/2014/03/responsive-highchart.html但未成功。
**问题:**当宽度为1920 px时, highcharts 看起来不错。当宽度为900 px时,饼图的描述(系列-〉数据)在浏览器之外,无法阅读,而且,饼图对我来说太小了。
**问题:**我如何避免这种行为?我想要一个更大的饼,并且能够阅读(系列-〉数据)。
我提供了以下代码:
我的HTML代码是:
<div id="container-independency" >
<div id="independency" >
<div>Title plot</div>
<div style="margin-left: 2.8%; margin-top:1%; font-size: 24px;">Bla blablabla blab bl<span class="autarkie" > </span> % blabla = <strong> <span class="autarkie" >
</span> % blablabla blablabla</strong></div>
<div id="highcharts_container"></div>
</div>
</div>
CSS代码:
# container-independency{
width: 90%;
max-width: 1620px;
background-color: #b8860b;
clear: both;
padding: 1%;
display: none;
box-sizing: border-box;
}
# independency{
width: 80%;
margin-left: auto;
margin-right: auto;
padding: 1%;
background-color: #ffb6c1;
box-sizing: border-box;
}
# highcharts_container{
width: 100%;
margin-left: auto;
margin-right: auto;
box-sizing: border-box;
}
高排行榜:
('#highcharts_container').highcharts({
chart: {
plotBackgroundColor: null,
plotBorderWidth: null,
plotShadow: false,
type: 'pie'
},
title:{
text:''
},
credits: {
enabled: false
},
navigation: {
buttonOptions: {
enabled: false
}
},
tooltip: {
pointFormat: '<b>{point.percentage:.1f}%</b>'
},
plotOptions: {
pie: {
allowPointSelect: true,
cursor: 'pointer',
dataLabels: {
enabled: true,
format: '<b>{point.name}</b>: {point.percentage:.2f} %',
style: {
color: '#58585a',
fontFamily: 'klavika-web, sans-serif', fontSize: '12px'
}
}
}
},
series: [{
name: '',
data: [
['Property1aaa/Property2aaa/Property3aaaaaa', independency],
['More blablabla blablabla', 100-independency],
]
}]
});//highcharts_container
更新:
2条答案
按热度按时间sczxawaw1#
每次图表更改大小时,都会触发图表的重绘事件。您可以在该事件中检查图表的宽度,并为系列调用其他更新,因为如果您将标签的文本更改为带有
<br>
标记的文本,则饼图看起来会很合适。如果您的问题更复杂,解决方案仍将类似-检查大小并更新图表。更改点名称的示例:http://jsfiddle.net/j86jkfvj/114/
宽度〈900 px时系列更新的示例:http://jsfiddle.net/dhwzw8qg/
uqjltbpv2#
下面是我发现的一个基于页面的resize事件重绘饼图的例子。我已经使用过了,效果很好:
jsfiddle.net/4mo2qf79/12
于飞:
JS: