Как устранить эту ошибку в d3 js при применении .ticks () к моей шкале x - PullRequest
0 голосов
/ 22 февраля 2020

Я предоставил рабочий пример и 2 набора данных, один из которых работает правильно, а другой - не отображает правильный график. Я использую функцию .ticks () на моей оси X и столкнулся с этой проблемой. Я хочу отобразить все метки, как в рабочем примере на оси x.

https://jsfiddle.net/q0yhobs4/

Это часть кода внутри скрипки.

let correctData={
2004: 226.933,
2005: 222.807,
2006: 221.869,
2007: 223.978,
2008: 218.385,
2009: 217.668,
2010: 216.061,
2011: 214.631,
2012: 214.053,
2013: 213.845,
2014: 206.436,
2015: 209.915,
2016: 214.51,
2017: 220.605,
2018: 222.128,
2019: 223.075
}
let asd = Object.keys(results)
    asd = asd.map(item => parseInt(item))
    x.domain(
      d3.extent(data, function(d) {
        return d.year;
      })
    );

svg
      .append("g")
      .attr("transform", "translate(0," + height + ")")
      .call(d3.axisBottom(x).ticks(asd.length));

1 Ответ

1 голос
/ 23 февраля 2020

Я прочитал ваш код и обнаружил, что количество asd и results не равно 10 НЕ 16. Я думаю, что проблема здесь.

...