Ujaval Gandhi Profile Banner
Ujaval Gandhi Profile
Ujaval Gandhi

@spatialthoughts

Followers
16,087
Following
459
Media
541
Statuses
2,366

Educator | Founder @ Spatial Thoughts | Helping people learn and master geospatial tech - #QGIS , #Python , #GDAL , #EarthEngine | Ex-Google

Joined May 2010
Don't wanna be here? Send us removal request.
Explore trending content on Musk Viewer
Pinned Tweet
@spatialthoughts
Ujaval Gandhi
3 months
Want to learn #Python for #Geospatial Analysis? We just launched our "Python Foundation for Spatial Analysis" course on YouTube - completely free and optimized for self-study. Check out the playlist at (1/n)
Tweet media one
4
135
492
@spatialthoughts
Ujaval Gandhi
4 years
After hearing from many people who were interested in my #QGIS and #Python courses, but could not afford the online instructor-led classes - I have made all 6 courses available for free for self-study. Full material and data packages are at
Tweet media one
112
2K
5K
@spatialthoughts
Ujaval Gandhi
2 years
Happy to announce my new course Mapping and Data Visualization with #Python . This has been in the making for over a year and excited to be able to share it with the world! The full course is free for self-study and shared under an open license. An overview thread below 👇 1/n
43
522
2K
@spatialthoughts
Ujaval Gandhi
3 years
I finally managed to finish my most ambitious project to date. Years in the making, I am releasing the full material for my 'End-to-End Google #EarthEngine ' course under an open license - allowing anyone to learn, teach and adapt it. Check it out at
Tweet media one
72
655
2K
@spatialthoughts
Ujaval Gandhi
2 years
Happy to announce my new 'Introduction to #QGIS ' course. This has been in the works for a while and is now available online. Completely free for self-study with step-by-step instructions. Check out the course at
Tweet media one
17
360
1K
@spatialthoughts
Ujaval Gandhi
1 year
Built a script today to create a building density map for anywhere in the world using Google #EarthEngine and the @Microsoft Global ML Building Footprints dataset from the GEE Community Catalog. Try out the script on your own region of interest
Tweet media one
24
173
923
@spatialthoughts
Ujaval Gandhi
1 month
Want to learn advanced #QGIS for spatial analysis and data visualization? We are launching our Advanced QGIS course on YouTube and have designed a challenge #30DaysOfQGIS . Spend 30 mins every day for the next 30 days learning QGIS. Interested? Check out
Tweet media one
16
263
850
@spatialthoughts
Ujaval Gandhi
3 years
I'll be teaching #QGIS Network Analysis tomorrow for #QGISOpenDay event. We will cover a range of problems including routing, location-allocation, and service area analysis. The event is open to everyone and will be live-streamed. Learn more
Tweet media one
Tweet media two
Tweet media three
7
214
776
@spatialthoughts
Ujaval Gandhi
9 months
New Post: Mapping Building Density with Open Building Datasets and Google #EarthEngine . The post contains open-source #GEE code and step-by-step instructions to create building density maps using Microsoft and Google's Open Buidings datasets.
Tweet media one
Tweet media two
Tweet media three
2
122
602
@spatialthoughts
Ujaval Gandhi
3 years
Want to take your Google #EarthEngine skills to the next level over the holidays? I just published a video series with 3 End-to-End Guided Projects that can help you learn and master #GEE with step-by-step instructions - completely free and with open-source code. 1/n
18
157
585
@spatialthoughts
Ujaval Gandhi
1 year
I am teaching a workshop on #QGIS Automation using Actions at #qgisuserconf2023 today. Lots of new examples of adding a bit of 'magic' to your QGIS projects. If you are not at the conference, you can still follow along with the materials at
10
133
588
@spatialthoughts
Ujaval Gandhi
2 years
A thread about the newly launched #DynamicWorld landcover dataset by #Google . I had early access and explored this dataset in detail. You may be very excited about this dataset, but likely for the wrong reasons. Sharing some insights, potential use cases, and pitfalls. 1/n
11
168
538
@spatialthoughts
Ujaval Gandhi
1 year
Releasing a new Google #EarthEngine workshop titled "Creating Publication Quality Charts with GEE" with completely open materials and code. A structured guide to help you create beautiful and informative visualizations from climate and earth observation datasets. A thread (1/n)👇
Tweet media one
Tweet media two
Tweet media three
Tweet media four
13
133
490
@spatialthoughts
Ujaval Gandhi
3 years
Wrote a new tutorial on Creating Maps with #GeoPandas where I introduce the main concepts and show how to create map layouts, multi-layer maps, and add labels. If you have found it hard to get started with matplotlib for mapping in #Python , check this out
Tweet media one
2
111
475
@spatialthoughts
Ujaval Gandhi
3 years
New #QGIS tutorial: Calculating Street Intersection Density for #walkability analysis and #transportation network design. Using OpenStreetMap dataset and native QGIS tools, you can compute this measure for any city in the world. Here's a step by step guide
Tweet media one
Tweet media two
5
120
443
@spatialthoughts
Ujaval Gandhi
5 months
I am happy to launch my course "Google #EarthEngine for Water Resources Management" covering real-world applications of #GEE . For the first time - we are also releasing videos along with code for all the modules - completely free. Get started at (1/n)
Tweet media one
4
115
440
@spatialthoughts
Ujaval Gandhi
6 months
We have put together comprehensive learning plans to help you master #QGIS , #Python , #EarthEngine , and #GDAL from our vast collection of courses, tutorials, and videos. Get started at
Tweet media one
Tweet media two
Tweet media three
Tweet media four
5
108
408
@spatialthoughts
Ujaval Gandhi
1 year
Want to improve your #Python geospatial skills? Check out my new video tutorial series covering spatial data analysis and visualization with #Pandas , #GeoPandas , #XArray , #Dask , #STAC #OpenRouteService API and more. Many more in the pipeline. I'll post these in the thread below👇
5
95
389
@spatialthoughts
Ujaval Gandhi
10 months
New Video Tutorial: Fixing Topological and Geometry Errors using #QGIS and Mapshaper. A quick primer on cleaning up messy vector data - the easy way.
Tweet media one
Tweet media two
2
74
390
@spatialthoughts
Ujaval Gandhi
6 months
Just posted: A new #QGIS tutorial with step-by-step instructions to download data and create a beautifully colorized river basin map.
Tweet media one
6
71
392
@spatialthoughts
Ujaval Gandhi
8 months
If you have been wanting to learn GEE - check out my new Introduction to Google #EarthEngine workshop - which now includes professionally edited videos from the #GeoforGood23 conference. Suitable for beginners with no programming background. Get started at
Tweet media one
4
96
382
@spatialthoughts
Ujaval Gandhi
6 days
Turn contour lines into a 3D map with #QGIS expressions. Want to try it out? Step-by-step instructions in our new tutorial in collaboration with @newgeographer2
2
68
409
@spatialthoughts
Ujaval Gandhi
6 months
Never thought I would see this day! NRSC has implemented ISRO's India Space Policy 2023 and started releasing 5m resolution ResourceSat2 LISS4 imagery as open data. You can sign up and download data from NRSC's Bhoonidhi Portal (1/n)
Tweet media one
13
77
374
@spatialthoughts
Ujaval Gandhi
4 years
Starting a new series for Google Earth Engine Tips: I'll post tips and example scripts to help you #Levelup your #GEE programming skills. 1/n
2
60
370
@spatialthoughts
Ujaval Gandhi
4 months
Helping a student detect central-pivot irrigation farms from a Landsat NDVI image. This was done in just 1 minute using the Segment Geospatial #Python package in Colab . Check the tutorials by @giswqs at
3
47
372
@spatialthoughts
Ujaval Gandhi
5 years
As promised, I am sharing my revamped course materials - freely and under an open license. First is 'PyQGIS in a Day'. that starts from basics and cover all topics related to Python programming in #QGIS . Would be useful for trainers and learners alike.
8
132
366
@spatialthoughts
Ujaval Gandhi
8 months
Big announcement at #GeoForGood23 for #Python users to leverage GEE data catalog and API with XArray and Dask workflows. Can't wait to try it out
Tweet media one
6
51
350
@spatialthoughts
Ujaval Gandhi
2 years
New Tutorial: Calculating Raster Area in #QGIS A step-by-step guide on quantifying land-use within a region using QGIS Processing Tools using the amazing ESA WorldCover dataset.
Tweet media one
1
99
346
@spatialthoughts
Ujaval Gandhi
4 months
New Post: Learn how to do regressions in Google #EarthEngine and best practices for setting up your machine learning workflow. The post shows how to predict Aboveground Biomass by fusing Sentinel-2 data with GEDI L4A. (1/n)
Tweet media one
4
72
345
@spatialthoughts
Ujaval Gandhi
4 months
We are making the videos for our course on data visualization with Google #EarthEngine available to everyone for self study. Access the complete playlist with ad-free videos at
@spatialthoughts
Ujaval Gandhi
1 year
Releasing a new Google #EarthEngine workshop titled "Creating Publication Quality Charts with GEE" with completely open materials and code. A structured guide to help you create beautiful and informative visualizations from climate and earth observation datasets. A thread (1/n)👇
Tweet media one
Tweet media two
Tweet media three
Tweet media four
13
133
490
5
96
337
@spatialthoughts
Ujaval Gandhi
4 years
I am leaving #Google today after 15 years! From a lucky break in 2005 getting hired through Keyhole acquisition, it's been an amazing journey working on Earth Enterprise, Maps, Maps Engine, Earth Outreach and Earth Engine. Full steam ahead on now.
Tweet media one
Tweet media two
Tweet media three
23
17
335
@spatialthoughts
Ujaval Gandhi
6 months
I conducted a workshop on Monitoring Land Use Land Cover Changes with Google #EarthEngine and #DynamicWorld at #InGARSS2023 . Sharing the full workshop material that has some new monitoring examples with JS and #Python code. See the thread below for details and explanation 👇(1/n)
Tweet media one
7
80
334
@spatialthoughts
Ujaval Gandhi
3 years
Happy to announce a major update to my 'Mastering GDAL Tools' course. The course now includes OGR tools and has new sections for downloading WMS layers, Working with KML files, and much more. Completely free and shared under an open license. Check out
Tweet media one
5
93
327
@spatialthoughts
Ujaval Gandhi
2 months
My "Mastering #GDAL Tools" course is now available on YouTube! This course is the result of my 20 years of experience processing large volumes of imagery and building data pipelines. Check out the playlist at . More in the thread below (1/n)
Tweet media one
3
88
328
@spatialthoughts
Ujaval Gandhi
2 years
Many researchers are interested in studying the effects of climate change and the urban environment. Thanks to open-source #EarthEngine code and #Landsat data, it is now possible to study these interactions at high spatial and temporal resolutions. A thread with code below 1/n
Tweet media one
5
69
305
@spatialthoughts
Ujaval Gandhi
10 months
Spent the day building the code for automatic extraction and creation of spectral profile plots for different landcover classes in Google #EarthEngine . Quite a complex workflow but quite pleased with the results. Code with documentation available at
Tweet media one
6
40
299
@spatialthoughts
Ujaval Gandhi
3 years
#QGIS Pro Tip: The Processing Toolbox has a built-in algorithm for calculating the 'Pole of Inaccessibility' for polygon layers. This is desirable over a plain centroid for many situations.
Tweet media one
4
44
291
@spatialthoughts
Ujaval Gandhi
3 years
Coastline Detection Fun using Google Earth Engine. Spent a few days building a #GEE script to automatically extract coastline from satellite imagery - all in GEE. A proper blog post coming soon but thought of sharing for some early feedback. More details and code below. (1/n)
10
49
282
@spatialthoughts
Ujaval Gandhi
1 year
New Post: I share my experience of attending the #QGIS International User Conference 2023 along with some resources from the talks and workshops presented at the conference.
Tweet media one
3
32
279
@spatialthoughts
Ujaval Gandhi
4 years
#GIS Pro Tip: Need to deal with topology issues or data gaps in your layers? Mapshaper is THE best open-source tool out there to fix them - without needing to install anything or uploading your data. Head over to
5
79
278
@spatialthoughts
Ujaval Gandhi
1 month
The video recording of my full workshop on "Monitoring Land Use Land Cover Changes with Google Earth Engine" delivered at #InGARSS2023 is now available. The workshop contains 3 case studies with both Javascript and Python code. Access the video at
6
61
272
@spatialthoughts
Ujaval Gandhi
2 years
Finally managed to publish code for a most user-requested #EarthEngine analysis. Applying Savitzky-Golay Filter on noisy and cloud-masked NDVI time series at each pixel. Pre-process images and apply the SG filter from OEEL by @mathieuGravey . Code at
Tweet media one
9
66
274
@spatialthoughts
Ujaval Gandhi
3 years
New #opensource #QGIS tutorial! With many open landcover datasets now readily available - this was a popular request from users to learn how to analyze LULC rasters with QGIS. Check out this step-by-step guide with urban planning use cases.
Tweet media one
Tweet media two
2
59
263
@spatialthoughts
Ujaval Gandhi
3 years
A long-overdue blog post summarizing #GIS Applications in Urban Planning in 6 thematic areas with concrete examples on how to model and solve them using #QGIS and open-datasets.
3
64
256
@spatialthoughts
Ujaval Gandhi
8 months
Another important launch at #GeoForGood23 . A new cloud mask dataset for Sentinel-2 called CloudScore+. I am impressed at its ability to generate clean and very precise masks for clouds and shadows. Much more accurate than current methods.
Tweet media one
Tweet media two
2
42
256
@spatialthoughts
Ujaval Gandhi
2 months
My favorite algorithm for automated detection of water from optical satellite imagery is 'waterdetect' . I implemented it in Google #EarthEngine so you can run this at scale. Check out my video explanation with a link to the code at
1
50
257
@spatialthoughts
Ujaval Gandhi
1 year
Heading out to Netherlands for the #QGIS International User Conference! Looking forward to meeting all the geo peeps Stay tuned for updates from #qgisuserconf2023
Tweet media one
9
9
249
@spatialthoughts
Ujaval Gandhi
3 years
Just published a long-awaited #QGIS tutorial showing how to use the powerful Aggregate (Dissolve-with-Statistics) algorithm in #QGIS for calculating area-weighted means. Open hydrological datasets and open-source tools for computing areal precipitation
Tweet media one
3
48
245
@spatialthoughts
Ujaval Gandhi
6 months
Spent the Christmas break playing with the recently released #LISS4 satellite imagery from #ISRO and am happy to share #Python open-source code using #XArray and #Dask for fast parallel processing of large datasets. A thread with details (1/n)
1
32
201
@spatialthoughts
Ujaval Gandhi
1 year
Sharing my thoughts and advice for anyone looking to start a career in the #geospatial industry in a 10-minute video. Check out the "Essential Geospatial Skills for Students and Researchers" video at and slides at . Agree/Disagree?
Tweet media one
5
48
240
@spatialthoughts
Ujaval Gandhi
3 months
Running #GDAL commands in a Notebook! Built a notebook showing how to install and run GDAL programs and also integrate them with #Python workflows. You can try the entire content of my Mastering GDAL Tools course in this Colab notebook
1
45
245
@spatialthoughts
Ujaval Gandhi
4 years
I finally managed to write one of the most requested #QGIS tutorial on Multi Criteria Overlay Analysis. It is one of the basic GIS topics, but wasn't easy to translate these to step-by-step guide using QGIS. Feedback welcome!
Tweet media one
3
63
232
@spatialthoughts
Ujaval Gandhi
4 years
I was looking forward to teaching my new 'Intro to Spatial Data' with #QGIS class today, but had to cancel the workshop due to COVID19. Nevertheless, I am sharing my materials openly for learners worldwide who may benefit from it
11
86
229
@spatialthoughts
Ujaval Gandhi
4 years
#QGIS Pro Tip: Square Buffers! Buffers need not always be round. If you want to create a buffer zone around land parcels - a square buffer is more appropriate. Use the 'Miter' join style to create a buffer with edges that are offset from the polygon edges.
Tweet media one
Tweet media two
4
45
228
@spatialthoughts
Ujaval Gandhi
3 years
New #SpatialAnalysis Challenge: Can you figure out a workflow to connect each building's road-facing edge to the nearest point on the street segment? Use your favorite spatial analysis tool and sample data at Read the thread below for more details
10
48
222
@spatialthoughts
Ujaval Gandhi
2 years
Just published! A #EarthEngine guided project on LandCover Analysis. These video tutorials with open-source code show how to work with landcover data in GEE. Starting from very basics to some advanced map/reduce code for large-scale analysis. Check out
3
61
220
@spatialthoughts
Ujaval Gandhi
3 years
Some Saturday morning 'Action'. A user wanted to highlight all points within a certain distance when you select a line from another layer in #QGIS . Wrote a bit of PyQGIS to create an action to do just that. Code here
4
37
217
@spatialthoughts
Ujaval Gandhi
3 years
#QGIS Pro Tip: Want to see selected features in a different style than the default? Use the Rule-based styling with the expression is_selected() = True to render selected features differently. You can also change color from Project → Properties → General → Selection Color
7
41
209
@spatialthoughts
Ujaval Gandhi
9 days
New #QGIS Tutorial in our series exploring creative use of expressions for visualization with @newgeographer2 . We show how to use geometry generator symbol layer to transform contour lines and create a stunning 3D visualization just from contour lines.
Tweet media one
0
32
209
@spatialthoughts
Ujaval Gandhi
2 years
I put together a learning plan for each of the technologies I teach. This takes all of my open learning materials and gives a structured guide to work through them. Check it out and let me know what you think #QGIS , #GEE , #EarthEngine , #Python , #GDAL
10
51
199
@spatialthoughts
Ujaval Gandhi
3 months
New #QGIS Tutorial: Basic Filtering and Styling with Expressions contributed by @newgeographer2 . Glad to have Steve share his cartography tricks in this simple walkthrough that explores QGIS expressions for filtering data and creating a beautiful map.
Tweet media one
4
32
199
@spatialthoughts
Ujaval Gandhi
7 months
New #QGIS tutorial. This new tutorial is adapted from our urban planning course and shows how to access data from an ArcGIS REST server in directly in QGIS and create a land-use map. Step-by-step instructions at
0
46
198
@spatialthoughts
Ujaval Gandhi
4 years
#QGIS Pro Tip: Want to find the nearest roads for a point layer? Use 'Join Attributes by Nearest'. Gets you the distance as well as attributes of the nearest feature. Even better - use the 'Create points layer from table' and 'Join by Hub Lines' to visualize the results.
1
31
198
@spatialthoughts
Ujaval Gandhi
1 year
I will be teaching Advanced Vector Operations using #EarthEngine today at @EEFAbook Author-led training. I will cover how to visualize vector data, create maps, do spatial queries, and perform spatial joins at a global scale! Register and join for free at
Tweet media one
Tweet media two
Tweet media three
3
43
192
@spatialthoughts
Ujaval Gandhi
2 years
I gave a talk on Time-Series Processing using Google #EarthEngine at #GeoforGood22 focused on understanding joins to effectively solve many challenging problems. If you want to level up your #GEE skills - do check out the video recording of the session
Tweet media one
5
33
192
@spatialthoughts
Ujaval Gandhi
5 years
I just published 3 brand new tutorials related to Network Analysis in #QGIS . First one shows how to visualize a road network and uses built-in processing tools to do basic routing
Tweet media one
6
58
186
@spatialthoughts
Ujaval Gandhi
4 years
I am teaching a month-long course with @AurozOgra offered via the University of Johannesburg. This course is the result of months of work developing 100+ scenarios where GIS - particularly #QGIS can be applied in Urban and Regional Planning. A thread 👇
Tweet media one
3
37
185
@spatialthoughts
Ujaval Gandhi
3 years
Join me to learn all about #QGIS Actions at the #QGISOpenDay event tomorrow! I'll cover Actions from the very basics and shows some fun demos of how you can automate your GIS workflows with a bit of action magic! YouTube Livestream Link at
1
49
186
@spatialthoughts
Ujaval Gandhi
4 months
New Post: Teaching Remote Sensing to Kids. Sharing my experience teaching Kids about Satellites and Earth Observation. I also share my content for other educators to use and adapt. Check out the post at
7
49
185
@spatialthoughts
Ujaval Gandhi
10 months
Save the date: I will be presenting at the next #QGIS Open Day on 25 August 2023 on the topic "Solving Complex Spatial Analysis Problems with QGIS". The session will be live-streamed and recorded. Check out more details and local times at
3
36
184
@spatialthoughts
Ujaval Gandhi
8 months
Absolute honor to meet @giswqs in-person who has inspired me and countless others with his skill and generosity. In words of one of my students " @giswqs is my favorite person on the internet!"
@giswqs
Qiusheng Wu
8 months
Finally met the legendary @spatialthoughts in person for the first time at #GeoForGood23
Tweet media one
7
11
284
7
7
181
@spatialthoughts
Ujaval Gandhi
2 years
New Post: Running #QGIS algorithms and models on the command-line with the qgis_process utility. I cover examples for both Windows and Mac that will help you get started and automate your QGIS workflows. Check out the post and let me know your thoughts.
Tweet media one
Tweet media two
4
46
184
@spatialthoughts
Ujaval Gandhi
4 years
Published my first YouTube video. A 45-min lecture on 'Introduction to Remote Sensing' that is almost entirely taught using pictures and charts. Hope you like it. The slide-deck here
2
23
176
@spatialthoughts
Ujaval Gandhi
4 months
Registrations are open for the next cohort of our most popular course End-to-End Google Earth Engine. Join this 3-week live online instructor-led program to learn #GEE from the ground up using both #Javascript and #Python . Register at
Tweet media one
0
50
180
@spatialthoughts
Ujaval Gandhi
10 months
New tutorial: Cleaning Up Vectorized Polygons using #Mapshaper . Filter/Clean/Update & Dissolve 100k polygons in under 5 seconds using the awesome open-source tool. Check out the video
4
30
181
@spatialthoughts
Ujaval Gandhi
11 months
#QGIS Actions are my favorite way to automate tasks using #Python in QGIS. Built a new action today to select first- and second-degree neighbor polygons from a layer. Simple, yet magical. Check out the step-by-step instructions with #PyQGIS code
4
36
175
@spatialthoughts
Ujaval Gandhi
2 months
#QGIS Pro Tip: You can use the 'Execute SQL' processing algorithm to run SQL queries on ANY vector layer within QGIS. Here's an example of calculating group statistics on a vector layer. This also allows you to run SQL queries in a model.
2
33
177
@spatialthoughts
Ujaval Gandhi
2 years
Whenever I show #QGIS editing tools to someone it blows their mind. But they can be hard to use, so I am making these mini videos on using them. Check out this new one published today. Using the Vertex Tool to Edit Geometries (QGIS Advanced Data Editing)
0
41
175
@spatialthoughts
Ujaval Gandhi
5 years
My 3yo daughter always asked for her own 'Q' t-shirt whenever she saw me wearing the 'classic' #QGIS shirt. I finally relented and got her a custom t-shirt printed. Proud dad moment when I overheard her explain the t-shirt to a friend "you can make maps with it" 😀
Tweet media one
Tweet media two
5
19
167
@spatialthoughts
Ujaval Gandhi
4 months
New Post: GDAL and Google Cloud Storage (GCS). GDAL can directly read or write data to a cloud-storage bucket. The tricky part is setting up authentication. I document and explore best practices for using #GoogleCloud Storage with #GDAL Tools.
Tweet media one
0
26
172
@spatialthoughts
Ujaval Gandhi
2 years
#GDAL Tip: If you are dealing with compressed aerial or drone imagery, you may end up with edge artifacts in the mosaics. This is caused by JPEG compression and is hard to clean up. @GdalOrg provides a handy 'nearblack' program to remove them. See
Tweet media one
1
26
171
@spatialthoughts
Ujaval Gandhi
3 months
Learn how to compute Vegetation Condition Index (VCI) and Temperature Condition Index (TCI) for drought monitoring using open-source Google #EarthEngine code. Code and Video Guide
3
40
171
@spatialthoughts
Ujaval Gandhi
3 years
Why anyone doing data processing, especially GIS folks, should learn scripting. A user sent me a ASCII file of 2.5D polygons in an esoteric format wanting to open in #QGIS . 15-lines of Python code to create a nice CSV with WKT geometries and you are done!
Tweet media one
Tweet media two
3
23
165
@spatialthoughts
Ujaval Gandhi
1 year
Happy to announce that my company Spatial Thoughts LLP is now a sustaining member of the #QGIS project! QGIS is a critical piece of software for the open-source geospatial ecosystem. If your organization uses QGIS - please encourage them to support it!
@qgis
QGIS
1 year
QGIS turned 20 last year. Help us get ready for the next 20+ years by becoming a sustaining member! #gischat #osgeo #opensource #crowdfunding
1
52
143
3
17
159
@spatialthoughts
Ujaval Gandhi
4 years
Part-1 of new series exploring the Google Earth Engine plugin for #QGIS . Here I show how to extract a NDVI time series for a farm and render a map template in QGIS to create an animation. @gena_d
3
38
162
@spatialthoughts
Ujaval Gandhi
4 years
During my #QGIS class yesterday, the participants were interested in more remote sensing tools, so I did a demo of the Google Earth Engine plugin for QGIS. Needless to say, everyone was blown away!
0
40
161
@spatialthoughts
Ujaval Gandhi
4 years
Continuing my series to explain the most frequently encountered challenges faced by beginners in Google #EarthEngine , here's a new post on techniques for calculating areas - including formatting and post processing of the results @EarthEngineBot
5
52
161
@spatialthoughts
Ujaval Gandhi
1 year
Today's ChatGPT win! Needed to use a color ramp from QGIS in a Javascript map and a single prompt did the perfect conversion saving me a lot of data wrangling.
Tweet media one
Tweet media two
2
11
160
@spatialthoughts
Ujaval Gandhi
3 months
New #QGIS tutorial: Learn how to create stunning visualization of topography using a hex grid and creative uses of QGIS expressions. A step-by-step guide with expression magic contributed by @newgeographer2 . Check out the tutorial at
Tweet media one
2
32
160
@spatialthoughts
Ujaval Gandhi
3 years
Detecting when a pond/reservoir was created using Earth Engine and Global Surface Water dataset across the globe with just a few lines of code. Example script showing aquaculture ponds and when the water was first detected at those pixels #GEE
Tweet media one
Tweet media two
Tweet media three
2
26
160
@spatialthoughts
Ujaval Gandhi
4 years
#QGIS Pro Tip: A proportional circle map is a great way to turn boring spreadsheets into informative visualization. Use 'data-defined override' to set the size of the symbol from a field and 'data-defined size legend' to add a legend.
Tweet media one
Tweet media two
Tweet media three
3
31
158
@spatialthoughts
Ujaval Gandhi
3 years
#QGIS Pro Tip: The Processing Toolbox has an algorithm 'Geometry by Expression' that can be used to create layers from coordinates stored in the attribute table. Here's an example of importing a plain CSV file with bounding box coordinates as a polygon layer using an expression.
Tweet media one
Tweet media two
Tweet media three
3
34
159
@spatialthoughts
Ujaval Gandhi
7 months
We have been modernizing and updating our #QGIS urban planning course material and publishing them as individual tutorials making them more accessible. Check out the newly published tutorial on "Determining Landuse Buffer Zones"
Tweet media one
0
49
156
@spatialthoughts
Ujaval Gandhi
3 years
New Post: Split Polygons into Equal Parts using #QGIS . While I miss having an iterator within the QGIS Modeler, this post shows how one can use the 'Feature Iterator' to run a model on each polygon of a layer and then merge the results.
5
38
154
@spatialthoughts
Ujaval Gandhi
2 years
The whole course is organized as a series of #Jupyter notebooks that can be run on #Colab with zero configuration. I hope this makes the exercises approachable to beginners. Check out the full course on our OpenCourseWare site and start learning!
4
23
154
@spatialthoughts
Ujaval Gandhi
2 years
My #Python Data Visualization class has a lot of fun with this notebook I put together to explore #Contextily and #Matplotlib . You can choose from a variety of basemaps and create a hi-res stitched image. Try it out and share your result in the thread!
Tweet media one
Tweet media two
3
25
147
@spatialthoughts
Ujaval Gandhi
29 days
#QGIS Pro Tip: The Processing Algorithm "Save vector features to file" can be used to append features to existing layers. Perfect for ETL workflows to update a database from a model. Example of appending some new road features to an existing layer inside a GeoPackage!
Tweet media one
2
26
153
@spatialthoughts
Ujaval Gandhi
4 years
I am hosting a live online class this Saturday called 'Automating GIS workflows with QGIS'. This is a 1.5 hour class at a US-friendly time where I'll teach you how to get more productive and automate spatial analysis. No coding required! Sign-up now!
7
45
152
@spatialthoughts
Ujaval Gandhi
5 years
The most requested #QGIS 3 update for the python plugin tutorial is now live. This was one of the toughest ones to produce as it is a complex topic addressed at beginners. Would appreciate feedback. Thanks to @ijturton for helping jump-start this update.
3
49
149