私はあなたの質問を、1025409600000 がどのように MMDDYY にフォーマットされるのかと解釈しました。それが NV の例で起こっていることです。
あなたが指摘した例では、x 軸の日付はほぼ希望する %m/%d/%Y (または MMDDYY) の形式になっています。x 軸の日付は次の行でフォーマットされています。
chart.xAxis
.tickFormat(function(d) { return d3.time.format('%x')(new Date(d)) });
したがって、d3.time.format('%x')
は から返される日付の形式を指定します(new Date(d))
。あなたが指摘したドキュメントは、フォーマットがどうなるか、つまり「%m/%d/%Y」を返すように見える「%m/%d/% Y %x
」としての日付を教えてくれます。ドキュメントを読んだ後、NVコードが目的の形式を返すと予想していましたが、次の方法で簡単に形式を取得できます。
d3.time.format('%m/%d/%Y')(new Date(d));
はnew Date(d)
日付データを受け取り、JavaScript の日付に変換します。NV の例の日付データは、1970 年 1 月 1 日 00:00:00 UTC (Unix エポック) からのミリ秒数です。このMDNページを参照してください。new Date(1025409600000)
コンソールに入力して、これを自分で確認できます。
%m/%d/%Y などの日付形式を D3 に認識させるには、時刻形式を作成してから日付データを解析する必要があります。これは、リンクを提供した D3 Time Formatting ページで説明されています。そこにあるものをあなたの例に適応させます。
必要な時間形式を作成します。
var format = d3.time.format("%m/%d/%Y");
そして、それを使用してデータを解析します:
format.parse(d.Date);
あなたのコードがなければ、これがどこに行く必要があるかを正確に言うことはできませんが、かなり明確なはずです. コンソールでこれを試すこともできます。
お役に立てれば