def test_support_for_other_geometry_column_names(self): df = pd.DataFrame([ { "xxx": Point(0, 0), "t": datetime(2018, 1, 1, 12, 0, 0) }, { "xxx": Point(6, 0), "t": datetime(2018, 1, 1, 12, 6, 0) }, { "xxx": Point(6, 6), "t": datetime(2018, 1, 1, 12, 10, 0) }, ]).set_index("t") geo_df = GeoDataFrame(df, geometry="xxx", crs=CRS_METRIC) traj = Trajectory(geo_df, 1) traj.add_speed() traj.add_direction() traj.get_bbox() traj.get_length() traj.get_linestring_between(datetime(2018, 1, 1, 12, 0, 0), datetime(2018, 1, 1, 12, 6, 0)) traj.get_start_location() traj.hvplot() traj.size() traj.to_line_gdf() traj.to_linestringm_wkt() traj.to_linestring() traj.to_point_gdf() traj.to_traj_gdf()
def test_get_linestring_between_interpolate_ValueError(self): # test for https://github.com/anitagraser/movingpandas/issues/118 # (not sure what causes this problem) df = pd.DataFrame([ { "geometry": Point(0, 0), "t": datetime(2018, 1, 1, 12, 0, 0) }, { "geometry": Point(6, 0), "t": datetime(2018, 1, 1, 12, 6, 0) }, { "geometry": Point(6, 6), "t": datetime(2018, 1, 1, 12, 10, 0) }, { "geometry": Point(9, 9), "t": datetime(2018, 1, 1, 12, 15, 0) }, ]).set_index("t") toy_traj = Trajectory(GeoDataFrame(df, crs=31256), 1) result = toy_traj.get_linestring_between( datetime(2018, 1, 1, 12, 6, 0), datetime(2018, 1, 1, 12, 11, 0), method="interpolated", ).wkt assert result == "LINESTRING (6 0, 6 6, 6.6 6.6)"
def test_get_linestring_between(self): df = pd.DataFrame([ {'geometry': Point(0, 0), 't': datetime(2018, 1, 1, 12, 0, 0)}, {'geometry': Point(10, 0), 't': datetime(2018, 1, 1, 12, 10, 0)}, {'geometry': Point(20, 0), 't': datetime(2018, 1, 1, 12, 20, 0)}, {'geometry': Point(30, 0), 't': datetime(2018, 1, 1, 12, 30, 0)} ]).set_index('t') geo_df = GeoDataFrame(df, crs=from_epsg(31256)) traj = Trajectory(1, geo_df) result = traj.get_linestring_between(datetime(2018, 1, 1, 12, 5, 0), datetime(2018, 1, 1, 12, 25, 0, 50)).wkt expected_result = "LINESTRING (10 0, 20 0)" self.assertEqual(result, expected_result)