What you are actually trying to do is a kind of Location Allocation analysis. The need for a pharmacy is determined by two things:
The amount of people living in an area (amount of buildings is proxy)
The distance (either Euclidean or drive time)
You could use the freeware of Utrecht University; flowmap for this purpose. It is a bit 'clunky' though. Their ...
There is no builtin function in QGIS field calculator that can do your task, but luckily you can create custom function in QGIS using Function Editor in field calculator, please follow the steps below
Open your shapefile in QGIS.
Open Attribute Table and click field calculator.
Please check the box saying Update existing field and select your desired field.
I like the expression you've put together - probably no solution in QGIS 1.8, but in QGIS 1.9-dev there's a floor() rounding function which rounds down. For D°M'S'':
(CASE WHEN $x < 0 THEN '-' ELSE '' END) || floor (abs($x)) || '° ' || floor(((abs($x)) - floor (abs($x))) * 60) ||'\'' || substr( (tostring((((abs($x)) - floor (abs($x))) * 60) - floor(((abs(...
Those instructions seem perfectly valid for the Raster Calculator in QGIS 3.0.
Output file settings are in the upper-right corner of the Raster Calculator window. Enter the filepath and name for your new raster where it says "Output layer."
This is actually fairly easy to do. I think others might have an easier solution but this is how I do it:
Go to the Processing tab -> Graphical Modeler
2. Under inputs, add raster layer two times. Name them "Day_Future" and "Day_Past". Make sure both are mandatory.
Under algorithms, search for raster calculator and add it.
Enter the parameters in the ...
The Con statement (conditional) is similiar to an IF ELSE statement and can be used with the raster calculator. I use it to add rasters together that have null values by converting the nulls to zeros. Con(isNull("raster_layer"), 0, "raster_layer")
Esri documentation: http://desktop.arcgis.com/en/arcmap/latest/tools/spatial-analyst-toolbox/conditional-...
Thanks for all the comments. I finally solved the problem, it was much simpler than I´d imagined. Effectively, the CellStatistics tool was the answer, but the result I was obtaining was a raster that didn´t comprise the total area of all my rasters. Once I added the MAX extension, it worked! Here I leave the code, in case is useful for someone dealing with a ...
Technically No you can't use Slope
You should use (Elevation Raster) instead of (Slope raster)
Because (Elevation Raster) represents the surface but (Slope Raster) is representing the most frequently run on an elevation dataset.
So the (Slope) is just a characteristic of the elevation which it can be computed using
slope_degrees = ATAN ( √ (...
If I understood correctly (you want to transfer population layer values to mobile signal raster only where its value is 1 ?)
“mobilesignal@1” * “population@1"
Then you can use Raster > Conversion > Translate if you want to replace 0s with no data / null.
The general process you've outlined is correct, but the order doesn't appear to be. You should subtract the newer DEM from the previous DEM starting from the oldest set.
If the volume is larger over time, it is possible that the images are not taken at the minimum snow depth for the year. If a glacier is thought to be receding, but the newest DEM was ...
This can be done, but doesn't need Raster Calculator. You could sum individual visibility rasters, but it isn't necessary as there's an easier way.
You can use the QGIS Plugin Advanced Viewshed Analysis which has a cumulative option. There are other viewshed algorithms (SAGA and GRASS) which might allow this too, but from memory, the plugin is best for this ...
You may run the following code from the Python Console, remembering to preliminary edit the name of the fields of interest (see the comments in the code below):
from qgis.core import *
layer = iface.activeLayer()
field = 'test' # replace this with the name of your starting field
newfield = 'result' # replace this with the name of your new field
I made some changes to the code to get the coordinates in DMS, if necessary.
Only adjustments to the EPSG information are needed.
(CASE WHEN $y < 0 THEN '-' ELSE '' END) || floor (abs(Y( transform( $geometry, 'EPSG:31983', 'EPSG:4326'))
)) || '°' || floor(((abs(Y( transform( $geometry, 'EPSG:31983', 'EPSG:4326'))
)) - floor (abs(Y( transform( $...
The modulo operator can be used to do truncation, but the resulting expression would be very ugly. It is prettier to use string substitution, but unfortunately QGIS doesn't expose any strpos or similar functions. Use regexp_replace($x, '\\..*', '') to get the whole part and regexp_replace($x, '^[0-9]*\\.', '') to get the decimal part. Use toreal instead of ...