Tag Info

Hot answers tagged

8

You could use the Group Stats plugin from Plugins > Manage and Install Plugins. This calculates various data statistics for your attributes such as finding the minimum value in a group. I made an example of attributes from the data you gave: Then from the Group Stats interface, select and drag the toid field from the list into the Rows window; and repeat ...


7

The aproach with cross-join doesn't use indexes and requires a lot of memory. So you basically have two choices. Pre 9.3 you'd use a correlated subquery. 9.3+ you can use a LATERAL JOIN. KNN GIST with a Lateral twist Coming soon to a database near you (exact queries to follow soon)


7

One approach is to convert this to raster and then extract contours Another is to find the buffer for each point;Dissolve those buffers to get a narrow polygon;Find the center line of each dissolved polygon.


7

You can do it via the geography type, using a geography index, or via the geometry type with some math to adjust for distortions in mercator. With geography: CREATE INDEX gb1900_geog_idx ON gb1900 USING GIST (geography(the_geom)); CREATE TABLE newtable AS WITH c AS ( SELECT a.cartodb_id, count(*) FROM gb1900 a, gb1900 b WHERE ...


6

The following is a rough outline of what you might do. I won't include a great deal of detail, you can research further using these terms and/or ask new more specific questions. Note: you will need to careful of coordinate systems. Firstly that they are the same for your datasets, and second that they use metric (metres) horizontal units (not actually ...


6

You are nearly there. There is a little trick which is to use Postgres's distinct operator, which will return the first match of each combination -- as you are ordering by ST_Distance, effectively it will return the closest point from each senal to each port. SELECT DISTINCT ON (senal.id) senal.id, port.id, ST_Distance(port."GEOMETRY", senal."GEOMETRY") ...


5

The following code is not polished but should work to create the same output table as the Point Distance tool but requires ArcGIS 10.1 (or later) for Desktop and only a Basic level license: import arcpy,math # Set variables for input point feature classes and output table ptFC1 = "C:/temp/test.gdb/PointFC1" ptFC2 = "C:/temp/test.gdb/PointFC2" outGDB = ...


5

The best way I can think is to get two UTM points, convert them to Lat/Long, and compare their geodesic distances to their UTM pythagorean distance. E.g. Take a point from this example: The CN Tower is ... in UTM zone 17, and the grid position is 630084m east, 4833438m north. So if we take A (17n 630084 4833438) and move it 30 km east, we get B (17n ...


4

Assuming that your points are in order, and that this works at 10.0 (I'm using 10.2): Field Calculator Expression: dist( !Shape! ) Field Calculator Code Block: count = 0 def dist(shape): global prev global count point = arcpy.PointGeometry(shape.getPart(0)) if count > 0: distance = point.distanceTo(prev) else: ...


4

The radius, r, of the small circle joining all points at latitude, φ is r = R cos φ where R is the radius of the sphere. That simplifies to r = cos φ if we assume a "unit sphere" (R = 1) for convenience. --------------------- A/D | r φ / | / | / | / |a / |x / |i ...


4

It doesn't matter at what longitude you are. What matters is what latitude you are. Length of 1 degree of Longitude = cosine (latitude in decimal degrees) * length of degree (miles) at equator. Convert your latitude into decimal degrees ~ 37.26383 1 degree of Longitude = ~0.79863 * 69.172 = ~ 55.2428 miles More useful information from the about.com ...


3

Use the Points to Line tool. http://resources.arcgis.com/en/help/main/10.1/index.html#//00170000003s000000 You could use a datestamp for the sort field, if the default doesn't work the first time. The shape length of the line should be included in the output feature class, if it is in a geodatabase. You might want to check the length by adding a field to ...


3

If you can't get v.distance to work (it should be available through the GRASS plugin), you could try the NNJoin plugin that I uploaded to the QGIS plugin repository recently. The NNJoin plugin does not use spatial indexes for line layers, so it is not practical if you have large datasets. Edit: The current version of the NNJoin plugin can use spatial ...


3

Both answers from @HåvardTveite and @mapBaker should help you get your results. What I normally do is first use the Distance to nearest hub tool and then Join the resulting layer with the polygon layer. This is a late answer but anyway, I created 2 simple layers (polygon and point) with the following attributes: I then ran the Distance to nearest hub via ...


3

Achieving this goal is somewhat a basic task in GIS, however the method in QGIS might not be trivial. Your best chance is to use GRASS's r.walk function, which creates an anisotropic cost surface (dem+slope+other factors). First, you have to create a friction surface as an input to r.walk. In your case it can be a single-valued raster (1.0) matching the ...


3

I am the developer of FlowMapper plugin. Hope you find it useful. Regarding your question: FlowMapper offers two types of flow length caculations: (i) for cartesian coordinates (e.g. UTM x y) (ii) for geographic coordinates (e.g. WGS84 easting northing) User must properly choose either CARTESIAN or GEOGRAPHIC calculation depending on the type of ...


3

If you need high accuracy distances, or "ground" distances, you need to convert your UTM "grid" distances (which you do indeed calculate via pythagorous) using a combined scale factor. This removes the distortion introduced by the combination of (a) reducing the horizontal distance at its elevated (above the ellipsoid) position on the earth and (b) ...


3

The Generate Near Table tool in ArcGIS will do what you want, but it requires an Advanced license and will do it for all points/polygons - not just those associated with each other. This means for each of your 95 objects you will get the ranked distance for all 211 properties, so 20,045 rows in the table. You'd either have to filter the resulting table or as ...


3

This is fairly simple to achieve using QGIS (I think any version will do) and a very simple SQL statement in DB manager. But for that your that must be in some kind of spatial database (Postgis or spatialite). Since it's more accessible to most people, I will assume using spatialite, but the SQL statements are the same for Postgis. Create a new Spatialite ...


3

There's probably several methods to achieve this but I will just mention a couple. The first requires several steps. I've created a couple of simple layers with a point layer (1 feature) and a polygon layer (3 features): Use the Polygons to lines tool, I just seach the Processing Toolbox and use all tools from there: Then use Convert lines to points ...


3

Both variables are zonal means. The average distance to the nearest facility is the zonal mean of the Euclidean distance grid (based on the facilities). The average number of facilities is the zonal mean of a one-kilometer radius focal sum of the facilities grid. (This is merely a grid whose cell values count the number of facilities within each cell. ...


3

I would approach this as follows: Convert your polygons into lines (by which each edge of the polygons - a line between the consequent vertices - will become a line feature in the output feature class.) After the conversion, the output lines will preserve their "parent" polygon ID. Use GP tool: Feature To Line. Take each point and then find out which line ...


3

You should use the Near GP tool for that (Advanced license only). It will add two fields to your point shapefile: one for distance to the nearest coastline feature and another for the coastline feature ObjectID.


3

The near tool gives you the results in the linear unit of measurement of the layer's projection. Try choosing a different (appropriate for your dataset) projection that uses feet. Then re-run the near tool.


3

I am no expert in this but from my understanding: The OpenLayers plugin in QGIS uses the EPSG:3857 CRS which is a projected CRS on a flat surface (here's a very good post describing it). Therefore, it calculates a straight-line distance as you would on a paper map. I can't find how Google Maps calculates its distances but a common method would be to use ...


3

you can't really convert convert distances in degrees into meters as the size of a degree varies as you approach the poles. convert your locations into a projected coordinate system, then calculate your distances.


3

The length of degree in north-south is about the same so you could use 1/110574 degree/meter as a factor. However, the farther to south or north you go the bigger the error is in east-west direction. For example, take these two shapes which have a 1 degree buffer in EPSG:4326 transformed into EPSG:32630 (UTM zone 30N). First one is from 40°N and the second ...


3

If you have full control over the algorithm and implementation, for a coarse approximation you could probably Get the coordinates of some points on your polylines in equal distance from the respective starting point Approximate a straight line through your points of each polyline (https://en.wikipedia.org/wiki/Simple_linear_regression) Get the distance ...


2

Implemented for Javascript: var r = 100/111300 // = 100 meters , y0 = original_lat , x0 = original_lng , u = Math.random() , v = Math.random() , w = r * Math.sqrt(u) , t = 2 * Math.PI * v , x = w * Math.cos(t) , y1 = w * Math.sin(t) , x1 = x / Math.cos(y0) newY = y0 + y1 newX = x0 + x1


2

Other way to measure this, it is using Qchainage (QGis plugin) to produce nodes equallly spaced from line. Then, you may use Distance to nearest hub (QGis plugin) to calculate distance among points.



Only top voted, non community-wiki answers of a minimum length are eligible