Мне нужно настроить синий круг из датчика Google Charts. Я вижу, что google-charts создает изображение svg. Есть ли способ изменить цвет центральной спирали или стрелки манометра.
Настройка Google Charts Gauge Blue Circle
Ответы (2)
стандартных параметров конфигурации нет,
но вы можете вручную изменить svg,
в событии 'ready'
диаграммы
см. следующий рабочий фрагмент...
google.charts.load('current', {
packages: ['gauge']
}).then(function () {
var data = google.visualization.arrayToDataTable([
['Label', 'Value'],
['Memory', 80],
['CPU', 55],
['Network', 68]
]);
var options = {
width: 400, height: 120,
redFrom: 90, redTo: 100,
yellowFrom:75, yellowTo: 90,
minorTicks: 5
};
var container = document.getElementById('chart_div');
var chart = new google.visualization.Gauge(container);
google.visualization.events.addListener(chart, 'ready', function () {
Array.prototype.forEach.call(container.getElementsByTagName('circle'), function(circle) {
if (circle.getAttribute('fill') === '#4684ee') {
circle.setAttribute('fill', '#5e35b1');
}
});
Array.prototype.forEach.call(container.getElementsByTagName('path'), function(path) {
if (path.getAttribute('stroke') === '#c63310') {
path.setAttribute('stroke', '#00bcd4');
path.setAttribute('fill', '#00bcd4');
}
});
});
chart.draw(data, options);
});
<script src="https://www.gstatic.com/charts/loader.js"></script>
<div id="chart_div"></div>
person
WhiteHat
schedule
19.11.2018
Я использую angular-google-charts, и вы дали мне отличную идею о том, как настроить центральный круг.
- person Jorge Valvert; 19.11.2018
WhiteHat — вы знали имена тегов «круг» и «путь». Есть ли документ, описывающий, как найти имена тегов, которые составляют весь SVG? Я не знаю, как анализировать AVG, чтобы найти имена тегов.
- person Nick; 10.04.2020
это помогает? --› ссылка на элемент SVG
- person WhiteHat; 10.04.2020
С точки зрения использования такой ссылки, если бы я хотел изменить цвет слова, отображаемого на датчике, как я мог бы использовать эту ссылку, чтобы найти этот тег?
- person Nick; 10.04.2020
Это просто ‹текст›?
- person Nick; 10.04.2020
Я нашел это! Это если (text.textContent === 'xxx') { ...!
- person Nick; 10.04.2020
Благодаря @WhiteHat я смог изменить синий центральный круг по умолчанию. Я использую модуль angular-google-charts и, используя идею @WhiteHat, я настроил «ненастраиваемый» с помощью синего круга конфигурации:
HTML:
<google-chart
[type]="'Gauge'"
[data] ="gaugeSales"
[options]="gaugeOptions"
[dynamicResize]="'true'"
(ready)="this.customizeGauge()"
>
ТС
customizeGauge()
{
Array.prototype.forEach.call(document.getElementsByTagName('circle'), function(circle) {
if (circle.getAttribute('fill') === '#4684ee') {
circle.setAttribute('fill', '#5e35b1');
}
});
}
person
Jorge Valvert
schedule
19.11.2018