Hot answers tagged

35

Kadeem's answer will prevent your features from being visible, but they will still be present, if you are trying to identify an individual ship track you may click an invisible feature by mistake. What it seems like you need to do is define your layer so that it's as if those features don't exist. In ArcGIS this would usually be done using a Definition Query,...


33

Any time you have a selection on a layer a cursor object will only return the selected rows. for row in arcpy.SearchCursor("name_of_layer_with_selection"): print row.field1, row.field2


25

Nowadays (QGIS v3.x) Get the layer reference: layer = iface.activeLayer() Select features by expression: layer.selectByExpression( "\"ogc_fid\"=482" ) Before QGIS 2.16 Follow these steps: Get the layer reference: cLayer = iface.mapCanvas().currentLayer() Get a featureIterator from an expression: expr = QgsExpression( "\"ogc_fid\"=482" ) it = cLayer....


25

You just gotta use the LIKE operator. For example, "TITLE" LIKE '%MINERAL CLAIM%' The % symbol acts like a wildcard. LIKE is case-sensitive, whereas ILIKE is not.


22

One thing that makes writing WHERE clauses a lot easier is to use the AddFieldDelimiters function, which automatically adds the correct, DBMS-specific delimiters for field identifiers, such as double-quotes for FGDB and brackets for PGDB. The other thing you have to consider is whether the value is a number, string, or other data type. Specifically, strings ...


18

This is now possible using just selections and a rule-based symbology. This requires the Expression Plus plugin (for QGIS 2.x. 3.0 has the functionality built in). Create a rule based symbology with the filter of: QGIS 3.0+ (from thequerist in the comments): is_selected() QGIS 2.12-2.18: isselected( @layer_name ) Or QGIS 2.8: isselected( '...


17

You may use the Feature Class To Feature Class python snippet. Here is the general syntax. FeatureClassToFeatureClass_conversion (in_features, out_path, out_name, {where_clause}, {field_mapping}, {config_keyword}) To output to a shapefile, make sure that your out_path is a folder (and not pointing within a file geodatabase), and that out_name has a *....


17

In QGIS 2.12 I have been able to select records with the Select By Expression function and $geometry IS NULL You can see the selected objects in the attribute table (since they obviously won't appear on the map). This might work in earlier versions, and would save folks from scripting in Python, as per Jake's answer.


15

Another, maybe simpler, way is: where = '"StudyID" = ' + "'%s'" %Name


14

Without knowing what your data looks like, the general syntax you need to insert into the select by attributes window is: [FIELD_1] IS NULL OR [FIELD_2] IS NULL OR [FIELD_3] IS NULL and so on for as many fields as you have to work with. For reference the full query would be: SELECT * FROM [TABLE_NAME] WHERE [FIELD_1] IS NULL OR [FIELD_2] IS NULL OR [...


14

the Describe function will also return a list. I am not sure if this is faster than the cursor method but I have fond this to be a useful tool. The resulting list is the object id's for the selection set. import arcpy aa = arcpy.Describe("someFC") ss = aa.FIDset tt = ss.split("; ") Print tt [u'1363', u'1364', u'1365', u'1367', u'1369', u'1370']


14

Create Layer From Selected Features DOES NOT create a DYNAMIC layer. The resulting layer is not dynamic at all. It is based on an FIDset. If you change the source data, the FIDs will change and your selection layer will break. There is no where clause in a selection layer. It is based on FIDset (the FIDs that were selected when you used 'Create layer ...


13

OpenLayers 2: You can unselect features with unselect and unselectAll methods of SelectFeature control: selectControl = new OpenLayers.Control.SelectFeature(vectorLayer); ... map.addControls([selectControl]); selectControl.activate(); // unselect any specific feature... selectControl.unselect(vectorLayer.features[0]); // ...or all features selectControl....


12

Kristina, I assume there is an attribute in your table which allows you to identify a single track? For example: point_id | track_id ------------+------------ 1 | 15 2 | 15 5 | 24 6 | 24 7 | 24 If you open the attribute table, you can find an epsilon symbol (in the figure below, the ...


11

The best way I've understood how Create Layer from Selected Featuresis this reference that I came across Create a temporary layer to select features Creating a temporary layer allows you to do things, such as make selections, without affecting the original data source. This layer will not appear in the ArcCatalog contents, because it is created in-memory ...


8

There doesn't seem to be a way to directly find a feature object's parent layer or whether it's selected from a method in the QgsFeature class. A similar approach to vlayer.selectedFeatures() is to test whether the feat.id() is in vlayer.selectedFeaturesIds(). QgsFeatureIds are not unique values compared with other vector layers, only within their own layer....


8

The select features of visible layer has been integrated into QGIS and its toolbar. Just select a layer in the table of contents and click on this little icon: If this isn't the function you wanted than you might have to wait(or pay him) for the original plugins author to adapt the plugin for QGIS 2.0.


8

You can use the floor function in your expression, like this: floor($id /24) IN (1,3,5,7,9,11,13,15,17,19,21) On a sample grid I've obtained this result with my own numbers (my grid has 13 columns per row): I've used: floor($id/13) IN (1,3,5,7,9) So, in general: floor($id / number_of_columns) IN (1, 3, 5, ..., 2*number_of_rows_to_be_selected - 1) To ...


7

Instead of: "'ZIP' = '10004'" try this: '"ZIP" = ' + "'10004'" The reason that your original expression gives an empty output is because the string 'ZIP' is not the same as (equal to) the string '10004'.


7

create a new polygon layer, draw a single polygon that covers all your current polygons, then cut the newly drawn polygon based on all your existing polygons, then select all polygons from you current set that share a line segment with the newly drawn polygon using select by location and you're done ---Edited version much more efficient, based on comment----...


7

Edit: The first method I posted wouldn't work. This one should though. One straightforward way to do this would be to select everything you want to keep via Make Feature Layer with a where clause of X <> c. Then, use Copy Features to save the result.


7

You need a ST_GeomFromGeoJSON select * from points p where ST_Within( p.geom, ST_GeomFromGeoJSON('{"type":"Polygon","coordinates":[...]}') ) Edit: ST_Intersects works also (need to set SRID on GeoJSON, and transform): select row_to_json(t) from (select * from table where st_intersects( st_transform( st_setsrid( ...


7

Yes, it's possible, using the new Python function editor in 2.8 or later. For a good tutorial check out this youtube video Your existing expression will always show the value of field "LAENGE" for all features, this is working as expected. What you really want is an $is_selected() function which evaluates to True if the feature is selected, or False if it ...


7

Some time ago I had a similar problem (How to change the symbology of selected features in QGIS). It seems that this features isn't available in QGIS 2.12 yet (https://hub.qgis.org/issues/12879), so you can achieve this effect using isselected function, available in Nathan's plugin qgsexpressionplus (https://github.com/NathanW2/qgsexpressionsplus). For ...


7

To select from all layers at once, you need to install Multiple Layer Selection plugin from Plugins -> Manage and Install Plugins -> search for "Multiple Layer Selection" The Multiple Layer Selection plugin has two options: Multiple Selection by point, and Multiple Selection by Rectangle Use option 2 to select the point and the polygon from ...


6

You probably already figured this out, but in case someone else comes across it, you can click the small selection icon to the right of the layer you want to make selectable (or not selectable). See the red arrow:


6

Right click on layer name: Selection -> Make This The Only Selectable Layer Fine control of selectable layers: In table of Contents switch to List by Selection view and then choose which layer are selectable:


6

Sounds like you want to select features and not clear the selection graphics layer each time you click a feature. If you're using a FeatureLayer, you would use SELECTION_ADD instead of SELECTION_NEW to add the selected features as you click on them.


6

Use the looping and variable value as shown in Aragon's answer with the FID field (this is the zero-based object ID field for shapefiles) as the select field as shown in L_Holcombe's answer to generate the where clause, and all should be good. To program in the total number of features use the Get Count tool and divide by 10 assigned to the variable. Will ...


6

You can do it in several different ways. Assuming you already have a selection, you can add new feature to your selection by: Select them interactivelly with any of the selections tool(Rectangle, Polygon, freehand), pressing "Ctrl" or "cmd" (Like jake already said). Take notice that if you select a already selected feature, it will be unselected; If you ...


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