Tag Info

Hot answers tagged

7

you can do more with Con than with Reclass, for example you can have continuous output value with Con. You can also use some map algebra within your statement, and you can have multiple inputs. However, if you need an output with a large number of classes, reclass is easier to use because you can use the built-in partitioning methods based on the histogram. ...


7

You can classify the streams using, among others, the Strahler Stream Ordering method. In the Strahler method, all links without any tributaries are assigned an order of 1 and are referred to as first order. The stream order increases when streams of the same order intersect. Therefore, the intersection of two first-order links will create a ...


6

While Jacub is correct that a stream ordering technique is your best bet for being able to represent stream magnitude or discharge, since the position in the network is a surrogate for these two stream characteristics, I would argue that you want to avoid using Horton-Strahler stream order for this purpose. It is seriously deficient in these applications, ...


5

This was a tough problem to track down because I had thought that the effect was at the edges of tiles when it fact they are throughout the data. You're right that the phenomena isn't in the data before mosaicking the data. The problem results from the resampling process that is inherent in mosaicking. You need to use either the cubic convolution or bilinear ...


5

the percent symbol is not a valid value in a numeric field. If you want to see the percent symbol, you can right click on your field name, go to properties -> number fomat and choose percentage. otherwise (not recommended) you need a text field,but then you need to convert your numeric values to string (assuming that T_Acres is numeric and using the ...


4

Yes, if you just want to do it with selections you need to run multiple selections and change the method/initial set. First Select by Location using within your smallest boundary. Or if you've got two that overlap somewhat, you select everything within one then run another selection using the method 'select from currently selected features in', as discussed ...


4

Apparently RefName never equals your comparison strings. All constant strings includes German characters ä or ü, but you don't use the "u" constant string prefix. Depending on the incoming string's format the comparison might not be what you expekt. You should write if RefName==u"Flächen für die Landwirdshaft" and make sure that RefName also is a correct ...


4

Put a u in front of the string so the interpreter knows it's Unicode. myCalc(!Epulettipus!, u"Lakóépület")


4

The Root Mean Square Error (RMSE) is one of those rare indices that is perfectly named, in that the name actually tells you how to calculate it. First difference the two DEMs ('error' or more properly in this case the deviation). Then square the differences. These first two steps can be calculated using a single expression in the Raster Calculator. Next, ...


4

The easiest way to do this without scripting would be to use the Con tool in modelbuilder (spatial analyst licence needed!). Con lets you define a condition (e.g. VALUE >= 1 and VALUE <= 1.5) and outputs a raster with value 1 for where the condition is true and 0 where the condition is false. If you do this for every raster you can then add all (plus) ...


3

Based on your variable, you just need to make sure variables and strings are not confused field_1="!field_name1!" field_2="!field_name2!" arcpy.CalculateField_management("Layer", field_0, field_1 + " / " + field_2, "PYTHON_9.3") note that if you have the strings as variables without the "!", it is nicer to use format() field_1="field_name1" ...


3

If your bathymetric data are current in the form of survey points then you should interpolate them onto a raster grid of the same resolution and extent as your LiDAR data. There are several methods for interpolating these points available in ArcGIS such as splining, IDW and kriging. The most appropriate method to use will depend on your data characteristics ...


3

You mention Python scripting, which would be a good way to approach this. However, if you're not already familiar with Python you could look at Model Builder, as this will give an easier GUI to get you started. Here is a quick example of a model which uses Select By Attributes to narrow down a layer, then uses the output of this to Select By Location: ...


3

You are looking for what is called the "strongly connected components" in graph theory jargon. These network islands can be computed in QGIS with the grass plugin - See v.net.components.


3

I would use either the Con or Reclassify tools to create a new raster with the value range that you are interested in and then perform the raster-to-vector conversion on this newly created raster. Two steps and you're done!


3

I think what you're really looking to do is an image classification. You are specifically looking for one land class, i.e. tomato farms. How many bands of imagery do you have and in which parts of the spectrum do they lie? Hopefully at least one is within the infrared, which is critical for vegetation type classification. If you have very fine resolution ...


3

There are several pro's and con's for using NAIP in land classification. Pro's High spatial resolution nIR band is useful for discriminating major vegetation classes (e.g. a crop circle surrounded by arid land) Acquired usually during peak growing season Con's Low spectral resolution The image acquisition during peak growth season can be ...


3

You don't 'Dim' variables in python, you just declare and assign them. That said, your basic route is to set the parser to python and check Show Codeblock. In the Pre-Logic Script Code box, enter your function like this: def DoThis(fld): val = 0 if fld <> 'a certain string': val = # do your calculation here return val In your ...


3

The ultimate in stupidity. All I was missing (in any of the ways I approached it) was "QUOTATION MARKS" around the expression. ie. Expression = "%Value%" if using Parse Path, or "%Name%" if not using Parse Path


2

Consider using Dissolve. This will write the output to a new feature class but it may be more efficient. In my experience dissolve operations have taken less time than merge. Run a benchmark to determine which is faster. There may be some issue with merge/dissolve wrt to performance and dissolving circular arcs (such as results of buffering points, ...


2

You can use the Attribute Assistant add on to do this.


2

Since you have FME, I recommend using the PolylineAnalyzer which is a custom transformer you can download for free within FME. This will measure the angle of your line segments, and the angle at vertices. Because this is a custom transformer, there's not much documentation, but the help says the following: Takes polylines and polygons and analyzes ...


2

If you're open to using python, and are in fact using ArcGIS 10.x, you can use the following: >>> import arcpy >>> points = [] >>> for row in arcpy.da.SearchCursor("YourInputLinesFileHere", ["SHAPE@"]): ... length = row[0].length ... for i in range(0,6): ... point = row[0].positionAlongLine(length/5*i) ... ...


2

You are missing the wrapping exclamation marks, try this: arcpy.CalculateField_management("Layer", field_0, '!' + field_1 + '!/!' + field_2 + '!', "PYTHON_9.3")


2

You have embedded the string variable within a string so python sees it as a string. I would suggest you make you code something like: field_0="field_name0" calcString = "!field_name1! / !field_name2!" arcpy.CalculateField_management("Layer", field_0, calcString', "PYTHON_9.3")


2

First, if needed, create a LAS Dataset from your .las files. Then use LAS Dataset to Raster, select Average for a DEM output.


2

As from the comment, you could loop on each feature then run the selection by location on a feature layer. There are different types of loops for this purpose 1) based on a selection by attribute for each FID in a feature layer or 2) directly based on the geometry in a cursor. Here is the code with a cursor, which is more straightforward IMHO. You get the ...


2

I don't have a time-enabled layer handy so I haven't tested this and can't say for sure it will work, but you could create a feature in your point layer with null geometry (edit the point layer, open its attribute table, and create a new record at the end of it) and assign it a time earlier than your earliest actual point. The animation should start with ...


2

It seems that there are two things going on here. First, your tiles are not seamless, in that in the areas of overlap at the edges of the tiles, the elevations are not identical. I can confirm this as I digitized several points along the overlapping area and extracted the elevations in both raster DEMs and found this: In the case of the two tiles that you ...


2

Using arcpy geometry tokens, you could try something like this: import os import arcpy arcpy.env.workspace = r"" #path to workspace arcpy.env.overwriteOutput = 1 polygon_fc = r"" #path to polygon fc base = [row for row in arcpy.da.SearchCursor(polygon_fc,["OID@","SHAPE@"])] compare = base overlaps_stats = {} for b in base: for c in compare: ...



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