|  | 
 | <!-- | 
 | Licensed to the Apache Software Foundation (ASF) under one | 
 | or more contributor license agreements.  See the NOTICE file | 
 | distributed with this work for additional information | 
 | regarding copyright ownership.  The ASF licenses this file | 
 | to you under the Apache License, Version 2.0 (the | 
 | "License"); you may not use this file except in compliance | 
 | with the License.  You may obtain a copy of the License at | 
 |  | 
 |    http://www.apache.org/licenses/LICENSE-2.0 | 
 |  | 
 | Unless required by applicable law or agreed to in writing, | 
 | software distributed under the License is distributed on an | 
 | "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY | 
 | KIND, either express or implied.  See the License for the | 
 | specific language governing permissions and limitations | 
 | under the License. | 
 | --> | 
 |  | 
 | <html> | 
 |     <head> | 
 |         <meta charset="utf-8"> | 
 |         <script src="lib/simpleRequire.js"></script> | 
 |         <script src="lib/config.js"></script> | 
 |         <meta name="viewport" content="width=device-width, initial-scale=1" /> | 
 |     </head> | 
 |     <body> | 
 |         <style> | 
 |             #main0, #main1, #main2 { | 
 |                 width: 100%; | 
 |                 height: 1200px; | 
 |                 margin: 20px 0; | 
 |             } | 
 |         </style> | 
 |         <h3>Polar bar series label positions</h3> | 
 |         <div id="main0"></div> | 
 |         <div id="main1"></div> | 
 |         <div id="main2"></div> | 
 |         <script> | 
 |  | 
 |             require(['echarts'], function (echarts) { | 
 |                 function setChart(chartIndex) { | 
 |                     var positions = [ | 
 |                         'start', 'insideStart', | 
 |                         'middle', | 
 |                         'insideEnd','end', | 
 |                         'inside', 'outside' | 
 |                     ]; | 
 |  | 
 |                     var chart = echarts.init(document.getElementById('main' + chartIndex)); | 
 |                     var rows = 3; | 
 |                     var cols = 3; | 
 |  | 
 |                     var angleAxis = []; | 
 |                     var radiusAxis = []; | 
 |                     var polar = []; | 
 |                     var series = []; | 
 |                     var title = []; | 
 |                     var cnt = positions.length; | 
 |                     for (var i = 0; i < rows; ++i) { | 
 |                         for (var j = 0; j < cols; ++j) { | 
 |                             var id = i * cols + j; | 
 |                             if (id >= cnt) { | 
 |                                 break; | 
 |                             } | 
 |                             angleAxis.push({ | 
 |                                 max: 4, | 
 |                                 polarIndex: id, | 
 |                                 startAngle: 75 | 
 |                             }); | 
 |                             radiusAxis.push({ | 
 |                                 polarIndex: id, | 
 |                                 type: 'category', | 
 |                                 data: ['a', 'b', 'c', 'd'], | 
 |                                 startAngle: 75 | 
 |                             }); | 
 |                             polar.push({ | 
 |                                 center: [ | 
 |                                     100 / cols * (j + 0.5) + '%', | 
 |                                     100 / rows * (i + 0.5) + '%' | 
 |                                 ], | 
 |                                 radius: [ | 
 |                                     chartIndex ? 10 : 30, | 
 |                                     100 / rows * 0.75 + '%' | 
 |                                 ] | 
 |                             }); | 
 |                             series.push({ | 
 |                                 type: 'bar', | 
 |                                 data: [ | 
 |                                     chartIndex ? 0.5 : 2, | 
 |                                     1.2, | 
 |                                     2.4, 3.6 | 
 |                                 ], | 
 |                                 coordinateSystem: 'polar', | 
 |                                 polarIndex: id, | 
 |                                 roundCap: chartIndex === 2, | 
 |                                 label: { | 
 |                                     show: true, | 
 |                                     position: positions[id], | 
 |                                     formatter: '{b}: {c}', | 
 |                                     borderColor: '#0ff', | 
 |                                     borderWidth: 2, | 
 |                                     // rotate: | 
 |                                 } | 
 |                             }); | 
 |                             title.push({ | 
 |                                 text: positions[id], | 
 |                                 left: 100 / cols * (j + 0.5) + '%', | 
 |                                 top: 100 / rows * (i + 0.92) + '%', | 
 |                                 textAlign: 'center' | 
 |                             }); | 
 |                         } | 
 |                     } | 
 |  | 
 |                     chart.setOption({ | 
 |                         title: title, | 
 |                         angleAxis: chartIndex ? angleAxis : radiusAxis, | 
 |                         radiusAxis: chartIndex ? radiusAxis : angleAxis, | 
 |                         polar: polar, | 
 |                         tooltip: {}, | 
 |                         series: series, | 
 |                         backgroundColor: '#fff', | 
 |                         animation: 0 | 
 |                     }); | 
 |                 } | 
 |  | 
 |                 setChart(0); | 
 |                 setChart(1); | 
 |                 setChart(2); | 
 |             }); | 
 |         </script> | 
 |     </body> | 
 | </html> |