1

列のタイトルが付いた配列があり、最初のセルのタイトルに「A1」を付けたい。私はそのように試しました:

var title=mtable.append("thead").append("tr");
title.append("td").text("A1");
title.selectAll("td")
        .data(lTitre)
        .enter().append("td")
        .text(function(d) { return d.key; });

私のコードは最初の列のタイトルを描画しません:2007(下に表示)。どうすればこれを解決できますか?

<thead>
  <tr>
    <td>A1</td>
 !!!! <td>2007</td> !!!!! is missing here 
    <td>2008</td>
    <td>2009</td>
    <td>2010</td>
    <td>2011</td>
  </tr>
</thead>
4

1 に答える 1

1

現在のコードで、 への__data__バインドを確認すると<td>A1</td>、 が含まれていることがわかります__data__.key == 2007selectAll()これは、ステートメントが現在の選択のいずれかの要素と一致するたびに、.data()関数が入力選択を作成する前にデータを既存の要素にバインドするために発生します。これを修正するには、selectAll()既存の要素と一致しない関数を使用するだけです。

var title = mtable.append("thead").append("tr");
title.append("td").text("A1");
title.selectAll(".new")
        .data(lTitre)
        .enter().append("td")
        .text(function(d) { return d.key; });
于 2012-07-03T21:46:14.353 に答える