Спасибо за информацию. Очень признателен!

ользую учебник, чтобы научиться создавать карты в D3.v3, но я использую D3.v4. Я просто пытаюсь заставить некоторые круги появляться на карте (см. Ниже). Кодекс работает, за исключением того, что круги находятся над Невадой и должны находиться в районе залива. Я предполагаю, что это несоответствие между проекциями карты и проецируемыми координатами. Я не уверен, в какой проекции находится карта, но я попытался заставить ее быть albersUsa (см. Закомментированные команды, где я генерирую путь), но это приводит к исчезновению всей карты. Любая помощь будет оценена!

<!DOCTYPE html>

<script src="https://d3js.org/d3.v4.min.js"></script>
<script src="https://d3js.org/topojson.v2.min.js"></script>
<script>

var w = 960,
    h = 600;
var projection = d3.geoAlbersUsa();
var path = d3.geoPath()
             //.projection(projection)

d3.json("https://d3js.org/us-10m.v1.json", function(error, us) {
  if (error) throw error;

  var svg = d3.select("body").append("svg")
    		.attr("width", w)
    		.attr("height", h);

  svg.selectAll("path")
     .data(topojson.feature(us, us.objects.states).features)
     .enter().append("path")
	 .attr("class", "states")
     .attr("d", path);

   svg.append("path")
      .attr("class", "state-borders")
      .attr("d", path(topojson.mesh(us, us.objects.states)))

   svg.append("path")
      .attr("class", "county-borders")
      .attr("d", path(topojson.mesh(us, us.objects.counties)));

      aa = [-122.490402, 37.786453];
  	  bb = [-122.389809, 37.72728];

   svg.selectAll("circle")
      .data([aa,bb]).enter()
      .append("circle")
      .attr(",cx", function (d) { return projection(d)[0]; })
      .attr("cy", function (d) { return projection(d)[1]; })
      .attr("r", "8px")
      .attr("fill", "red")
    });

</script>

Ответы на вопрос(1)

Ваш ответ на вопрос