Форматирование числа в процентах в d3
В настоящее время использует Superset и пытается отформатировать ось Y графика, чтобы показать число в процентах.
Значения
0,7, 0,75, 0,9, 1,2, 1,21 и так далее. Я пытаюсь отформатировать их как 0,70%, 0,75%, 0,90%, 1,20%, 1,21% и т. Д. У меня проблемы с форматированием таким образом. Когда я использую ".2%", он возвращает два десятичных знака, т.е. 1,21 превращается в 121,00%. Использование ', 0.01' вернет 1.2, 1.21 и т. Д., Но при добавлении процента к концу он не отображается, а также не добавляется второй знак после запятой, когда он не существует.
Кто-нибудь знает, как форматировать 2-х значные десятичные разряды в d3 (специально для надмножества, которое будет принимать только строку, а не код)
2 ответа
На вкладке столбцов таблицы редактирования в надмножестве вы можете добавить новый столбец типа float, в выражении sql вы можете указать (column_name)/100. 0,70 теперь станет 0,0070, теперь вы можете подать заявку на 0,2% в формате оси Y.
Вы можете проверить это здесь, попробуйте просто дать строку
http://koaning.s3-website-us-west-2.amazonaws.com/html/d3format.html
Почему бы вам просто не объединить их со строкой "%"
?
var numbers = [0.7, 0.75, 0.9, 1.2, 1.21];
var format = d3.format(".2f")
numbers.forEach(function(d){
console.log(format(d)+ "%")
})
<script src="https://d3js.org/d3.v4.min.js"></script>