score:4

You don't need to convert your data to (x,y) pairs in pixels. When you use d3.geoPath.projection(projection) you've set your d3.geoPath() path generator to use the specified projection to automatically convert (latitude, longitude) pairs to (x,y) pairs.

What you need to do is take your (lat, long) pairs and use them to generate a GeoJSON object, which you can then feed to your d3.geoPath generator. You'll probably want a GeoJSON point.

So your code should probably look like:

var projection = d3.geoMercator().fitSize([width, height], json);
var pathGenerator = d3.geoPath(projection);

var URL =  "https://www.google.com.tr/maps/place/Ankara/@39.9035553,32.6223376,11z/data=!3m1!4b1!4m5!3m4!1s0x14d347d520732db1:0xbdc57b0c0842b8d!8m2!3d39.9333635!4d32.8597419?hl=tr";

var splitUrl = URL.split('@');
var coords = splitUrl[1].split(',');

var geoJsonPoint = {
    type: "Point",
    coordinates: coords,
} 

pathGenerator.path(geoJsonPoint);

Related Query

More Query from same tag