blob: e8ae2f1161cf34edbb86f29d9654cec806d3974d [file] [log] [blame]
<html>
<head>
<meta charset="utf-8">
<script src="esl.js"></script>
<script src="config.js"></script>
<script src="lib/jquery.min.js"></script>
</head>
<body>
<style>
html, body, #main {
padding: 0;
margin: 0;
width: 100%;
height: 600px;
}
.operations {
margin-top: 10px;
margin-bottom: 30px;
}
</style>
<div class="operations">
<input type="radio" name="inside" value="radius"/> inside zoom radius
<input type="radio" name="inside" value="angle" checked="checked"/> inside zoom angle
<input type="radio" name="inside" value="all"/> inside zoom all
</div>
<div id="main"></div>
<script>
require([
'echarts',
'echarts/chart/scatter',
'echarts/component/legend',
'echarts/component/polar',
'echarts/component/dataZoom'
], function (echarts) {
var chart = echarts.init(document.getElementById('main'), null, {
renderer: 'canvas'
});
var data1 = [];
var data2 = [];
var data3 = [];
for (var i = 0; i < 100; i++) {
data1.push([Math.random() * 5, Math.random() * 360]);
data2.push([Math.random() * 5, Math.random() * 360]);
data3.push([Math.random() * 10, Math.random() * 360]);
}
chart.setOption({
legend: {
data: ['scatter', 'scatter2', 'scatter3']
},
polar: {
},
angleAxis: {
type: 'value'
},
radiusAxis: {
axisAngle: 0
},
dataZoom: [
{
id: 'slider-v',
show: true,
orient: 'vertical',
angleAxisIndex: [0]
},
{
id: 'slider-h',
show: true,
orient: 'horizontal',
radiusAxisIndex: [0]
}
],
series: [{
coordinateSystem: 'polar',
// FIXME
// 现在必须得设置这个,能不能polar和catesian一样,要不然很多特殊处理。
angleAxisIndex: 0,
radiusAxisIndex: 0,
name: 'scatter',
type: 'scatter',
symbolSize: 10,
data: data1
}, {
coordinateSystem: 'polar',
angleAxisIndex: 0,
radiusAxisIndex: 0,
name: 'scatter2',
type: 'scatter',
symbolSize: 10,
data: data2
}, {
coordinateSystem: 'polar',
angleAxisIndex: 0,
radiusAxisIndex: 0,
name: 'scatter3',
type: 'scatter',
symbolSize: 10,
data: data3
}]
});
var radioOption = {
radius: {
dataZoom: [
{
disabled: true,
id: 'inside-a',
type: 'inside',
angleAxisIndex: 0
},
{
disabled: false,
id: 'inside-r',
type: 'inside',
radiusAxisIndex: 0
}
]
},
angle: {
dataZoom: [
{
disabled: false,
id: 'inside-a',
type: 'inside',
angleAxisIndex: 0
},
{
disabled: true,
id: 'inside-r',
type: 'inside',
radiusAxisIndex: 0
}
]
},
all: {
dataZoom: [
{
disabled: false,
id: 'inside-a',
type: 'inside',
angleAxisIndex: [0]
},
{
disabled: false,
id: 'inside-r',
type: 'inside',
radiusAxisIndex: [0]
}
]
}
};
initRadio();
chart.setOption(radioOption.angle);
function initRadio() {
$('.operations').on('click', function () {
$('.operations input').each(function (idx, el) {
if (el.checked) {
chart.setOption(radioOption[el.getAttribute('value')]);
}
});
});
}
})
</script>
</body>
</html>