2016-08-24 2 views
0

jqPlotに基づいているprimefaces 6.0の折れ線グラフコンポーネントを使用しています。私のチャートでは、nullの値があります。私はbreakOnNullプロットオプションを利用しているので、カーブはヌルポイントでブレークしていますが、残念ながらヌルの "ポイント"は文字列として表示されています。 )。 enter image description herejqplot null値を削除する方法

これまでのところ、私はhideZeros: trueオプションを設定して解決しようとしましたが、成功しませんでした。

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

しかしnull値はそれをすべてに渡されていないので、これは私が理解できない、どちらか動作しません:私はまた、単純なカスタムpointLabelsレンダラを試してみました。

ご協力いただければ幸いです。

+0

return (val== null?"":val);}を変更することにより、「NULL」の文字列が事故によるものであるかどうかをチェックしようとした平野jqPlotでこの仕事をしていますか? – Kukeltje

+0

上記のコードスニペットを意味するのであれば、それはエクステンダー関数の中にあります。私はプレーンなjqPlotを使用しないので、このコードが1:1以外の場合は動作しません。 – Svetoslav

+0

PrimeFacesは、チャートの基本的なjavascriptを生成するだけでなく、データを追加して 'extender'スクリプトを追加するだけで、この点で多くのことをしません。単純なjqplotの例を作成するのは難しいことではありません(PFユーザーと同じバージョンを最初に試してみてください)。問題が純粋にjqplotに関連しているのか、PFで問題があるかどうかを確認できます。後者の場合、私は捜査を開始するよりは喜んでいますが、純粋にjqPlotの場合はそうではありません。したがって、疑問。 – Kukeltje

答えて

0

あなたはjQueryのeach機能をpointLabels divsを反復してnull文字列を検出した場合、nullようにそれを変更することができます。

これはアプローチの例です。(document).readyイベントへのこの追加機能は、チャートが作成された後でx軸ラベルのテキストを削除します。同様のapporachを使用すると、該当するdivタグからあなたの必要な値削除することができます。ここでは

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

を説明したアプローチによって除去され、x軸ラベルの例とjsfiddleです。

0

null値がreturn (val== 'null'?"":val);}

関連する問題