是否可以在JMP中围绕一组坐标生成边界框?所有,
如果我有一组坐标,是否有一个地理空间函数可以生成指定半径内的边界框的坐标。
例如
纬度= 47.80
经度= -122.00
我想在10英里范围内围绕这些坐标生成一个边界框。JMP是否有任何内置功能?
我能够使用“R”来实现这一点,除非我愿意尽可能在JMP中这样做。此外,函数的函数文档接受一个分数而不一定是距离 - 不清楚分数的符号。为了消除歧义,我更愿意在JMP中尽可能地做到这一点。
Lat <- 47.80
Lon <- -122.00
Rad <- 0.05
BBox <- ggmap::make_bbox(lon = Lon,lat = Lat,f = Rad)
Re:是否可以在JMP中围绕一组坐标生成边界框?这个帖子会指出你的这个网站它描述了用于计算地球上的点之间的距离和其他有用公式的半正式公式。我在本节中使用了公式给定距离的目的地点和从起点开始的方位在中心位置周围创建一个圆点。在我的帖子中,我使用了距离各个方向90度的距离。10英里将是一个程度的一小部分。(至少那是我认为我这样做的方式。运气不错,JSL中有一些评论。)
Projected circle of sunlight预计的阳光圈
Re:是否可以在JMP中围绕一组坐标生成边界框?不确定你打算使用边界框,但是我使用了类似下面的内容来控制JSL对Graph Builder地图的“缩放”(从公制系统中快速适应)。
Names default to here(1);
// Desired map central position and distance to view boundary
Lat = 40.782222; //Latitude
Lon = -73.965278; //Longitude
Rad = 7; // miles
// Calculate bounding box coordinates with geodetic approximation (WGS84)
a = 6378137; // Radius of earth at equator (m)
e2 = 0.00669437999014; // eccentricity squared
m = 1609.344; // 1 mile in meters
r = Pi() / 180; // convert to radians
//Distance of 1° latitude (miles)
d1 = r * a * (1 - e2) / (1 - e2 * Sin(Lat * r) ^ 2) ^ (3 / 2) / m;
//Distance of 1° longitude (miles)
d2 = r * a * Cos(Lat * r) / Sqrt(1 - e2 * Sin(Lat * r) ^ 2) / m;
//Bounding box coordinates
{minLat, maxLat} = {Lat - Rad / d1, Lat + Rad / d1};
{minLon, maxLon} = {Lon - Rad / d2, Lon + Rad / d2};
//––––––––––––––––––––––––––––––––––––––––––––––––––
//Example map
dt = Open("$SAMPLE_DATA/SAT.jmp");
gb = dt << Graph Builder(Variables(X(:Longitude), Y(:Latitude)), Elements(Points(X, Y)));
Report(gb)[FrameBox(1)] << Background Map(Images("Street Map Service")); Wait(1);
//Set bounding box (Manhattan, ~13 miles long)
Report(gb)[ScaleBox(2)] << {Min(minLat), Max(maxLat)};
Report(gb)[ScaleBox(1)] << {Min(minLon), Max(maxLon)};