7

表示するデータがない場合、「No Data Available」メッセージの代わりに空のグラフを表示する方法はありますか?

http://jsfiddle.net/sammla/pYWkD/2/

data2 = [ 
    { 
      "key" : "A key" , 
      "values" : []
    }

];

ありがとう!

4

3 に答える 3

8

空の配列を含む空の配列を持つことで、これを「ハック」できます。

data2 = [ 
  { 
    "key" : "A key" , 
    "values" : [[]]
  }
];
于 2013-07-03T21:17:25.737 に答える
5

noDataLars が提供する回答は、空のときにチャートにメッセージを表示したくない場合にうまく機能します。

最近、コンテンツが動的に読み込まれるチャートがありました。これに似た質問を見つけましたUpdating with no data does not clear old data from the chart.

グラフにデータが入力され、データが空になった後に update が呼び出されると、noDataテキストが既存のデータをオーバーレイします。

両方を同時に表示すると混乱する可能性があるため、現在のデータをグラフから消去する必要があるかどうかを検討してください。

それに対する明確な解決策を見つけることができなかったので、それを克服するために私がしたことは次のとおりです。

Larsの回答を使用してチャートを空にしました:

data2 = [{
    "key" : "A key",
    "values" : [[]]
}]; 

そして、以下のコードを追加しました。

d3.select('#chart svg').append("text")
        .attr("x", "235")
        .attr("y", "35")
        .attr("dy", "-.7em")
        .attr("class", "nvd3 nv-noData")
        .style("text-anchor", "middle")
        .text("My Custom No Data Message");

私でさえ、既存のデータをオーバーレイせずに noData テキストを表示するための適切な解決策を求めています。しかし今のところ、これは完全に機能します。

同じことを達成しようとしている人に役立つことを願っています。

于 2014-02-14T09:41:58.597 に答える