2017-10-04 13 views
1

私は6つのカテゴリを持つ棒グラフを持っています。禁止、制限付き、高、高、中、低。Qlikview:0バーを表示していますが、注文を維持しています

if(COL = 'prohibited', 1, 
if(COL = 'restricted', 2, 
if(COL = 'very high', 3, 
if(COL = 'high', 4, 
if(COL = 'moderate', 5, 
if(COL = 'low', 6, 1)))))) AS COL_SORT 

は私も0カウントのカテゴリを示して確認「表示すべての値オプション」を持っている:私のロードスクリプトでは、私のような何かを行くチャートに棒のソートのための注文の列を作成しました。私が見つけたのは、並べ替えが部分的にしか機能しないのは、各カテゴリにボリュームがある場合、注文は機能しますが、0のバーがある場合、並べ替えの動作は保証されません。

私の質問は:バーの数が0以上であっても、バーの順序を保証する方法はありますか?私が働いている会社はサンプルデータをアップロードすることはできないので、助けようとしている人々を悩ませるかどうか分かります。

種類よろしく

編集:私はもし/ else文のように秩序を維持したいと思います。チャートの

答えて

3

「プロパティ - >ソート」 使用ソート順序として「表現」と、この表現を使用します。

max({1} COL_SORT) 
1

デュアル()関数は、あなたがやりたいことができます。デュアルは、ディメンションの各要素に数値を割り当てます。 QlikViewは、それを内部的に使用して、月や曜日の名前を並べ替えます。重要な点は、スクリプト内で順序を割り当てた後、グラフのソート順を数値に設定する必要があることです。

dual(COL, 
if(COL = 'prohibited', 1, 
    if(COL = 'restricted', 2, 
    if(COL = 'very high', 3, 
     if(COL = 'high', 4, 
     if(COL = 'moderate', 5, 
      if(COL = 'low', 6, 1))))))) AS COL 
関連する問題