Highcharts планшета без внутреннего пирога?
Я искал решение для создания простейшей диаграммы пончиков с помощью библиотеки Highcharts. Тем не менее, все примеры Highcharts показывают стиль диаграммы как с внутренним пирогом, так и с внешним пончиком (см. http://www.highcharts.com/demo/pie-donut)
Как я могу избавиться от внутреннего пирога и просто сохранить внешний пончик, как это делают другие библиотеки? (что-то вроде RGraph: http://www.rgraph.net/examples/donut.html)
Спасибо.
Ответы
Ответ 1
Вам просто нужно предоставить данные в виде массива из двух элементов (ключ/значение) массивов. Задайте innerSize
, чтобы получить стиль пончика.
Таким образом, ваши параметры будут содержать примерно следующее:
...
data: [["Firefox",6],["MSIE",4],["Chrome",7]],
innerSize: '20%',
...
Здесь jsFiddle полного примера.
Ответ 2
**I hope this example of highchat will solve your problum
http://jsfiddle.net/e2qpa/3/
$(function() {
var chart = new Highcharts.Chart({
chart: {
renderTo: 'container',
type: 'pie'
},
plotOptions: {
pie: {
borderColor: '#000000',
innerSize: '60%'
}
},
series: [{
data: [
['Firefox', 44.2],
['IE7', 26.6],
['IE6', 20],
['Chrome', 3.1],
['Other', 5.4]
]}]
},
// using
function(chart) { // on complete
var xpos = '50%';
var ypos = '53%';
var circleradius = 102;
// Render the circle
chart.renderer.circle(xpos, ypos, circleradius).attr({
fill: '#ddd',
}).add();
// Render the text
chart.renderer.text('THIS TEXT <span style="color: red">should be in the center of the donut</span>', 155, 215).css({
width: circleradius*2,
color: '#4572A7',
fontSize: '16px',
textAlign: 'center'
}).attr({
// why doesn't zIndex get the text in front of the chart?
zIndex: 999
}).add();
});
});
Ответ 3
Это был лучший результат поиска, и полученные ответы не сработали для меня. Я нуждался в большем контроле над точками данных, чем просто массив массивов. Мне нужно было использовать объекты JSON для настройки дополнительных параметров, таких как явные цвета для конкретных данных. В ходе некоторых исследований я обнаружил, что вам вообще не нужно изменять формат данных. Все, что вам нужно сделать, чтобы сделать круговую диаграмму в диаграмме пончиков, - это просто установить значение innerSize, большее 0 в серии данных.
Из документации по высоким стандартам:
innerSize: размер внутреннего диаметра для Пирог. Размер, превышающий 0, отображает диаграмму пончика. Может быть процентного или пиксельного значения. Проценты относятся к размеру пирога. Значения пикселей задаются как целые числа.
Итак, вы можете получить простую диаграмму пончиков с данными, подобными следующим:
series: [{
innerSize: '30%',
data: [
{name: 'Yellow Slice', y: 12, color: 'yellow'},
{name: 'Red Slice', y: 10, color: 'red' },
{name: 'Blue Slice', y: 33, color: 'blue'},
{name: 'Green Slice', y: 20, color: 'green'}
]
}]
JS Fiddle