你好我是弹性和巢的新手。 我使用了一个如何索引地理位置定位的例子,因为我可以看到kibana地图中的地理点可视化。
这是我的数据结构:
speed_y
我的索引代码如下:
public class LocationArray
{
public string ArrayNameArtical { get; set; }
[ElasticProperty(Type = FieldType.GeoPoint)]
public IEnumerable<Location> Locations { get; set; }
}
public class Location
{
public string Name { get; set; }
[ElasticProperty(Type = FieldType.GeoPoint)]
public Coordinate Coordinate { get; set; }
}
public class Coordinate
{
public double Lat { get; set; }
public double Lon { get; set; }
}
现在我想索引LocationArray类,似乎需要更改我的映射,但我知道如何做到这一点。但是我可以看到kibana中的数组数据但是无法查看它地图。 对地理点索引数组有什么问题吗?
答案 0 :(得分:4)
好的,所以在挖掘几个小时后找到了映射这个地理点数组的方法.. 希望有一天它会帮助别人:)
client.Map<LocationArray>(m => m
.MapFromAttributes().Properties(p=>p
.NestedObject<Location>(no => no
.Name(pl => pl.Locations.First())
.Dynamic()
.Enabled()
.IncludeInAll()
.IncludeInParent()
.IncludeInRoot()
.MapFromAttributes()
.Path("full")
.Properties(pprops => pprops
.GeoPoint(ps => ps
.Name(pg => pg.Coordinate)
.IndexGeoHash().IndexLatLon()
)
)
))
);