2 개의 슬라이드가있는 부트 스트랩 회전식 컨베이어가 있습니다. 두 슬라이드 모두 2x2의 부트 스트랩 그리드를 사용하여 차트를 표시합니다. 그들은 잘 작동하지만 반응 형 미디어 쿼리를 구현하려고 노력 중이며 제대로 작동하지 않는 것처럼 보입니다. 정의하려면 baseOptions
및 media
옵션을 사용했지만 차트가로드되지 않고 콘솔에 오류가 표시되지 않습니다.echarts 부트 스트랩 (컨베이어)이 작동하지 않는 미디어 쿼리
나는 인라인 스타일 width
및 height
즉 style="width: 100%;height:400px;"
와 <div>
컨테이너를 정의하기 위해 노력하고 또한 자바 스크립트는 다음과 같은 소위
.mychart {
width: 100%;
height: 400px;
}
같은 CSS에서 width
및 height
을 정의하기 위해 노력했다.
<div id="chart1" style="width: 100%;height:400px;"></div> //with inline style
<div id="chart1" class="mychart"></div> //with CSS class
var myChart1 = echarts.init(document.getElementById('chart1'));
var lpnArr = [101, 43, 10, 250];
option = {
title : {
text: 'My data Pie',
subtext: 'Data as of last batch',
x:'center'
},
tooltip : {
trigger: 'item',
formatter: "{b} : {c} ({d}%)"
},
legend: {
orient : 'vertical',
x : 'left',
data:['Processed','Unprocessed','In RIB','Errors']
},
color: ['#4bc14f','#ff7f50','#da70d6','#d8316f'],
toolbox: {
show : true,
feature : {
mark : {show: false},
dataView : {show: false},
magicType : { show: false},
dataZoom : { show : false},
restore : {show: true},
saveAsImage : {show: true}
}
},
calculable : true,
series : [
{
name:'Processed',
type:'pie',
radius : ['50%', '70%'],
startAngle : 230,
center: ['35%', '50%'],
itemStyle : labelFormatter, //custom formatter
data: lpnArr //load chart with data array lpnArr
}
]
}
var mediaQuery = [
{
option: {
series: [
{
radius: ['50%', '70%'],
center: ['35%', '50%']
}
]
}
},
{
query: {
minAspectRatio: 1
},
option: {
series: [
{
radius: ['50%', '70%'],
center: ['35%', '50%']
}
]
}
},
{
query: {
maxAspectRatio: 1
},
option: {
series: [
{
radius: ['50%', '70%'],
center: ['50%', '35%']
}
]
}
},
{
query: {
maxWidth: 500
},
option: {
series: [
{
radius: ['50%', '70%'],
center: ['50%', '35%']
}
]
}
}
];
myChart1.setOption({baseOption : option,
media : mediaQuery});
미디어 쿼리없이 사용하면 정상적으로 작동합니다. 문서에 따라 baseOptions
및 media
와 함께, 미디어 쿼리를 사용하여이
myChart1.setOption(option);
처럼, 차트는 단순히로드되지 않으며, 그것은뿐만 아니라 나에게 콘솔에 오류가 표시되지 않습니다, 그래서 내가 올바르게 사용하고 있는지 확실하지 않습니다. 그런데
, 나는 또한 창 크기를 조정할 때 차트의 크기를 조정 할 수 있도록 스크립트의 끝이있다 그러나 나는이 진정으로 반응하지 않는 것을 깨달았다 - 부트 스트랩
$(window).on('resize', function(){
myChart1.resize();
});
차트 요소는 다른 div
내에있는 <div>
요소이며 BS container-fluid
클래스입니다. 회전식 코드는 this JSFiddle에서 찾을 수 있습니다.
이해할 수 있습니다. 특정 너비 또는 높이에 도달하면 차트를 다시 그려야합니까? –
예. 진짜 문제는 버전 2의 echart를 사용하고 있었고'미디어 '는 버전 3에서만 도입되었다는 것입니다. 오류가 나타나지 않는 것은 이상합니다. – Annjawn