2016-08-24 3 views
0

Я использую компонент диаграммы линейных компонент 6, основанный на jqPlot. В моих диаграммах у меня есть нулевые значения, которые мне нужны, потому что я использую опцию построения breakOnNull, поэтому кривые имеют разрывы в нулевых точках, но, к сожалению, нулевые «точки» отображаются в виде строки (см. Снимок экрана). enter image description herejqplot, как избавиться от нулевых значений

До сих пор я пытался решить эту настройку hideZeros: true вариант - без успеха. Я также попытался простой пользовательский pointLabels рендерер:

this.cfg.seriesDefaults.pointLabels = 
{ 
    show: true, 
    location: 's', 
    formatString: '%.1f', 
    formatter: function(format, val){ 
     console.log(val); 
     return (val== null?"":val);} 
} 

, но это не работает, так как либо null значения не передаются всем, что я не могу понять это.

Любая помощь будет оценена по достоинству.

+0

ли эта работа в простом jqPlot? – Kukeltje

+0

Если вы имеете в виду фрагмент кода выше, он находится внутри функции расширителя, и, поскольку я не использую простой jqPlot, я не знаю, будет ли этот код работать 1: 1 в противном случае. – Svetoslav

+0

В этом отношении PrimeFaces не делает многого, помимо создания базового javascript для диаграммы, данных и добавления сценария «расширитель». Пример в простой jqplot не должен быть сложным для создания (сначала убедитесь, что вы пытаетесь использовать ту же самую версию, что и пользователи PF), и тогда вы можете быть уверены, что проблема связана только с jqplot или что PF испортит ситуацию. В последнем случае я более чем готов начать расследование, но не, если это чисто jqPlot. Отсюда вопрос. – Kukeltje

ответ

0

Вы можете перебрать pointLabels divs с JQuery each функции и при обнаружении null строки, изменить его, чтобы быть null.

Ниже приведен пример подхода, эта функция добавления к событию (document).ready удалит текст меток оси X после создания диаграммы. С подобным apporach вы можете удалить ваши требуемые значения из соответствующей дивы:

$('.jqplot-xaxis-tick').each(function(i,elem) { 
     $(this).text(null); 
    }); 

Вот jsfiddle с примером для й-меток осей удаляются с помощью описанного подхода.

0

Пытался проверить, если нулевые значения случайно «нулевая» струна путем изменения return (val== null?"":val);} к return (val== 'null'?"":val);}