A great book is Cynthia Brewer's Designing Better Maps. This will give you some ideas about visual hierarchy (making some elements appear more important than others), and how to use color, texture and pattern to your advantage. IIRC there's a section on font and typeface as well. Additionally, Ms. Brewer has a great online resource called ColorBrewer2.0 that is helpful in determining color combinations and includes criteria such as colorblind-safe, use in print or multimedia.
​
These are where I would start and I believe many undergrad cartography courses would start too. Good luck!
OK well, color is a big part of it. Try the https://color.adobe.com/ site to generate some useful palettes as starting points. You can load an image (map you like) into it to extract the colors used.
After that - you need to think about how it's going to be presented. Power point? Print? Web? Format your work for those different mediums.
Browse the ESRI mapbook galleries: http://www.esri.com/mapmuseum for inspiration.
Try to present your data clearly - don't focus on the base data - this should be there, but not have focus.
Edit to add:
Pay attention to typography - don't use too many fonts. Choose your font based on the overall graphic design for your map - sanserif=modern/contemporary serif=classy, traditional.
GRASS GIS is used mostly for sophisticated spatial analysis. Almost any tool in ArcGIS has an equivalent in GRASS 6 or 7. It's popular an academic circles as they want open source analytic tools where the code can be inspected and even tailored to their needs. It has a fairly steep learning curve, though it has extensive help documentation.
If you're just making simple maps, you're better off using QGIS.
Download OSgeo4w, it installs QGIS and other GIS software and utilities, including GRASS and Saga GIS that are accessible as plugins from within QGIS.
Try QGIS as a good start. There's a built-in plug-in to georeference images. You can take the historical maps and using points on those maps that you can identify the modern location of you'll be able to align, stretch and warp them so the rest of the map falls into place. Obviously the more points for georeferencing you can find the better the fit.
Anytime I need to quickly spin up on something new like that, I hit up Udemy. There are many different courses for each topic. Let user reviews steer you to the good ones.
Try not to buy anything there at full price. There are frequent sales where you can get 80-90% off.
Check out PostGres SQL and PostGIS: http://www.postgresql.org/download/ You can install PostGIS after installing Postgres. You should also get pgAdmin so you can check out and play with the database easily. http://www.bostongis.com/?content_name=postgis_tut01
You don't necessarily have to know much about web development to produce online interactive maps. For example, Esri has the WebApp builder and Mapbox has Mapbox Studio.
If you want to make custom interfaces, I would start by learning some basic HTML and CSS. Then learn JavaScript, which is what makes websites interactive. Besides the commercial products and APIs (Google, Esri, Mapbox...) there's many open source and free libraries like leaflet and openlayers.
All of these libraries have tutorials and examples which can help you get started.
GeoServer for your open source gis server.
Postgres for your open source relational database. Don't forget to install postGIS during the post-install phase as it will add all the necessary spatial aspects.
However, for the love of all things GIS, please get your data out of personal geodatabases (.mdb) and forget you ever heard of them. Create file geodatabases (.gdb) and move your data. Or, better yet, create a database with Postgres and serve the data with GeoServer.
Really pumped about this! Here is our post about it on our blog and a blog from one of our investors.
You can use some free software known as QGIS to do this.
You can download it from here
I would then suggest to work through the tutorials below
https://www.qgistutorials.com/
If you're interested in webmapping it is easy to create them using plug-ins within the QGIS environment.
The most obvious alternative is QGIS, an open source desktop application very similar to ArcGIS Desktop. (http://www.qgis.org/). It has versions of the most popular geoprocessing tools available in Arc, and is always growing and getting better.
For web mapping, there are a number of alternative Javascript libraries that you can slam together to get the functionality of ArcGIS Online or something similar. Check out Leaflet (http://leafletjs.com/).
Not sure what your goals are, but if you use the browser based streetview and inspect your network traffic with a program like Fiddler you can see that each scene fetches 20 .jpg's. These images do not have the embedded street names.
You can save the images directly from fiddler and/or probably whip up a script to capture and catalog them as you "drive" streetview.
EDIT: You can also view the raw images fetched by Google Earth with Fiddler.
Indeed has better trends showing that GIS is steadily declining http://www.indeed.com/jobtrends/q-GIS.html were as something like "data scientist" is trending upward http://www.indeed.com/jobtrends/q-data-scientist.html
What kind of scale and area coverage are you looking for?
As u/bd504840 and u/devans1983 have already said, the free OS data will do rivers of a certain width and the MasterMap will do all rivers and streams of all sizes in polygon. MasterMap will need an educational licence or a fee though.
OpenStreetMap will have rivers digitised to nearly the same scale as MasterMap but less stringently and consistently. You can download small areas from here: https://www.openstreetmap.org/export#map=17/52.55876/-0.34419
Or the whole of the UK here: http://download.geofabrik.de/europe/great-britain.html
FYI, if you are just learning and not doing anything to serious or hardware demanding, run it in a virtual machine like virtual box instead of dual booting. Virtualbox has decent performance nowadays, and you can still use windows at the same time.
Also - looking at the docs, it seems installation is pretty easy for windows, and will be just as much work (if not more) for Ubuntu. Have you ever used any linux based systems before?
As mb2231 said, Mapbox can be used to accomplish some of the same tasks as ArcGIS online, like uploading and hosting your data , and adding it to a map. Mapbox uses vector-tiling which makes the maps fast and scalable. You're on the right track about basemaps tho. What really sets Mapbox apart from other web-based spatial data services is that you can customize the crap out of the basemap and create some really beautiful cartographic products tailored to your needs.
They also have a javascript API, Mapbox GL, that you can use to build web applications.
Open Street Map is the best, and it's free and you can use it with any GIS. It also has speed limits included on most road lengths. I just made a blog post about where to find GIS data for NY (in general).
Have you tied extracting residential buildings from OpenStreetMap data?
https://www.openstreetmap.org/query?lat=40.74142&lon=-73.98430#map=17/40.72622/-73.97963
QGIS can download OSM data directly, or you can download from Geofabrik.
If you are going to use folders, I would set up them up geographically like: \server\state\county\city. I use that for county or city specific data, but also have folders within the state organized by type like \server\state\transportation or \environmental, etc. But like /u/ilsaz says it's more important to be organized and for it to make sense for you and anyone else that has to access that data. Nothing more frustrating than trying to find data.
It's easy to start with good intentions, but we deal with SO much data, it's very easy for it to get out of control. One of your best friends will be a software called BeyondCompare One of the best $50 I have turned in for expenses.
edit: finished a sentence!
Wordpress is pretty popular as a platform. If you're not opposed to learning a little HTML & CSS I highly recommend Jekyll. There are plenty of really nice looking themes to use, you have a ton of control over your site if you choose to customize.
It's an awesome way to show potential employers that you are competent with web technology. Another huge bonus is that you can use Github Pages to host your site for free.
I'm in the same boat, except I have had no internship and been unemployed for 1.5years (from Australia). About 20% of the jobs I apply for I get interviews but I have not received an offer yet.
The excuse every time I don't get the job is that the business hired someone that had some experience. You have that experience already so it must be something else that is holding you back.
I also discovered that employers preference people who know programming. Here is an app that I have been using to teach myself Python. If you want to get into the GIS field, teach yourself programming because that is what is limiting you right now.
Other than GIS, geography could cover census/statistical information, you could consider planning policy work as that ties into GIS as well as environmental management.
Ask government departments if you can help out or if there is anything available for experience, just ask companies and departments. Sometimes they might not have something right then but they will offer to take your resume in case of a future opening.
Most importantly, keep your skills up to date and keep applying, don't let failure get to you (it is just part of the experience you get applying and interviewing for work.)
Me personally I bought myself a Raspberry pi to learn Python on to make it practical and fun. I also bought myself Arc GIS for personal use (~$100-$200) and sometimes make my own small projects and maps so I can physically show work I have done out of pure interest. Sometimes your pure passion can mean they are willing to overlook the lack of experience.
Good Luck.
Not sure why you haven't looked at OpenStreetMap. Once data has been added to OSM the other map data providers add it to their databases.
There are several apps that can store map data on the device. I prefer OSMand.
Self-taught programmer here, I have a BS in geography/GIS, no formal education in computer science beyond an intro Java class I got a C in. I started as a GIS Technician in a municipality 10 years ago, and I am now currently an Application Developer in the GIS department of a large company. To become a good GIS developer, you should pick a language and learn it well. Python is the obvious choice here, it is a very versatile for desktop GIS. I HIGHLY recommend the MIT Intro to Comp Sci cource. This course will teach you python, but more importantly, it will teach you to think like a programmer. This is where many of those self-directed websites like Codecademy and such fall short. (Take a look at this article: 4 Reasons Why You Shouldn’t Learn to Code from Codecademy). There are quite a few core CS concepts like data structures, language paradigms, etc, that are introduced in the MIT course that are crucial to understanding how to program. Once you have a grasp on these fundamental concepts, learning new languages is relatively easy.
Don't worry about web dev yet, you'll get there, but it's too complicated and involves a lot of things working at once. Too much at once for a complete novice. People can get overwhelmed trying to jump right into web apps and they give up on programming because it's "too hard." Focus on learning Python, and automating parts of your day to day work. The reward you get by developing a script that takes care of some repetitive or tedious work you have will get you hooked, and you'll want to keep learning!
I've posted this before, but I use Indeed to get an idea of the demand for skills. Here are a couple of indeed searches for the US:
ArcGIS 2,539 jobs
QGIS 39 jobs
QGIS is great, it's getting better all the time and I use it a lot, but right now, QGIS experience isn't going matter much if you're looking for a GIS job.
If you're in Europe especially or maybe Asia, it's a different story..
Agreed. I've used UDig and while it's pretty powerful if you get into it, it's not nearly as comparable to ArcGIS as QGIS.
Even gvSig, which is hardly popular, gets more mention among GIS folks than UDig these days.
I think its great as a simple GIS database. It also works great as a backend database for smaller web GIS applications. Its also handy in that it can be put in an application and loaded to a mobile device for offline use.
For a file storage format I prefer geopackage because spatialite has about 5MB of overhead in every file that I assume is all the SQL code for the spatial functions which geopackage does not have. Thats a good bit of extra backage if you just want to email some data to someone.
I agree that the documentation could be better but it implements the same OGC SFS standard as PostGIS and so most of the functions are interchangeable. If you're not sure you can check http://www.gaia-gis.it/gaia-sins/spatialite-sql-4.2.0.html
My main concern is that I'm not sure how much effort is going into maintaining it anymore. Does anyone know if it is really an open source project or if its being maintained just by Alessandro Furieri? I'd love to see it get some foundation support. Its too good to let slip away IMHO.
MapBox's server product, Atlas, is anything but cheap. It's also a lot more than just map tiles.
Are you just looking at creating and hosting map tiles? If you have access to a server, you could set up geoserver and serve your own tiles/data pretty easily. Just extract what you need from OSM, render in something like Mapnik or tilemill and host.
Thanks for updating your post. You are right on with your pseudo code. The deal with coordinate systems is that the geom column on parcels2013 and your GPS data must be in the same coordinate system in order for you to use any spatial functions or predicates (INTERSECT, WITHIN, etc...)
The geometry datatype has a SRID property that gives you the code that represents coordinate system of the data. You can query this property using ST_SRID. GPS data is usually in the WGS84 coordinate system (SRID=4326). You must 1) reproject your incoming GPS data to match the coordinate system of your geom column or 2) change your geom column on parcels2013 to a geography datatype and reproject the data to WGS84 (SRID=4326).
"They" use reddit ;) Thank you for your feedback. We get our vector tiles from OpenMapTiles. They write: "The lower zoom levels this is from Natural Earth data for glaciers and ice shelves and at higher zoom levels the landcover is implied by OSM tags." https://openmaptiles.org/schema/#landcover
Third Leaflet.
Second Mapbox, you can check out some of their Mapbox.js examples here.
(For the record Mapbox.js is essentially Leaflet.js with some extra stuff specific to Mapbox added in.)
On the color scale idea, take here's two resources that will get help you get a better color scheme for your data:
Another suggestion would be to add commas and dollar symbols in your data display.
QGIS can export to SVG through the print composer. I've found that when you're doing a tonne of layers at once it can be a bit screwy at times, but it should work fine for a single layer because the problems I had were always about interactions between layers.
Are you expected to learn ArcGIS specifically? Is that what other people in your organization are using?
If not, then you should learn QGIS. It's free, open source, etc. Runs on a mac. Search this subreddit (or google) for resources on learning it and you will find many.
If you have to learn ArcGIS, then you will either need a Windows machine or you will have to run it using Parallels or Boot Camp (and will need a Windows license as well).
The learning curve for both programs feels a little bit steep right at the beginning, but if you are sharp you shouldn't have any trouble picking up the basic skills over the course of about a month. The main things to focus on initially are learning about data formats and file types, some basic geoprocessing operations, and how to make an actual map (legends, color schemes, etc.)
Both ArcGIS and QGIS have extensive online help documentation, and you can always come to this subreddit or gis.stackexchange.org with specific questions as you go along. Don't sweat it, you can do it!
GDAL is a library for data abstraction (Geospatial Data Abstraction Library) so it is definitely not ArcPy. There really is no perfectly equivalent open source ArcPy module. However what you might be looking for is PyQGIS
However, most of the time when writing Python code for GIS you'll want to just use a combination of Python modules. Here is a good answer to a similar question.
1) Learn js https://www.freecodecamp.org/
Learning JavaScript will make learning any GIS js library easier and will make you 5x more marketable.
2) Learn leaflet https://leafletjs.com/
Easy GIS web visualization library. Companies from 3-person environmental start up to Facebook use leaflet because of the simplicity.
3) Build an app and put it on GitHub
Mappit will do this
https://play.google.com/store/apps/details?id=com.osedok.gisdatacollector&hl=en_US
​
Definitely Py because you can use it to script stuff in ArcGIS (It's called the ArcPy library). I highly recommend "A Byte of Python", it's a free e-book and pretty good for what it is. Also if you get deeper into it, a good reference guide is "Microsoft Code Complete 2nd Edition".
Java is good, it's a "C-like" language and kind of like C++ except with garbage collection (so you don't have to deal with pointers, deletions and whatnot and can't get memory leaks).
I'm thinking that Ruby/Rails is probably good if you want to do web mapping stuff like ArcGIS Online and whatnot.
But just focus on learning the basics like data types, loops, functions, arrays, trees, objects and stuff like that. Then worry about what language is useful because with the basic knowledge it's easy to transition to other languages given a weekend or two of messing around in them.
Just to throw this out there, Codeacademy is a great resource for learning coding for free. Even if you don't think you'll like it, it's worth it to learn at least a little to get a feel for it. You might be surprised and enjoy it, and the Python course only takes an average of 13 hours to complete.
I only have a basic knowledge of Python, personally, but I recently started using Codeacademy to freshen up my skills and maybe learn a little more than I already know, and it definitely works well.
Because you may have the opportunity to learn Java and plan to do research related to GIS down the road, take a look at the Java Topology Suite.
Lamentable sourceforge link
If you are digitising features have a look at OpenStreetMap.
There are often government and NGO imagery sources available to assist editors.
You can create your features using OSM, and then download them from OSM.
For my area there is imagery from:
Something that I LOVE, that is not necessarily GIS related, but immensely helpful to anyone that codes (to include quite a few GIS guys) is Sublime Text. I find it leaps and bounds better than Notepad++ or any other editor. The developer seems to have the same licensing scheme as the infamous WinRAR:
"Please pay, but if not it's cool."
Just bought a few licenses for the company, but it has GREAT personal licensing if you like supported great developers.
There are lots of specialist type jobs in that lineup. DC is one of the major hotbeds for GIS. Houston and CO are the others that come to mind.
Put together a nice portfolio of your past work, add some self motivated projects, anything is ok, just make something in your spare time that shows that you're really in to it and brush up on some python and you should do ok. Good luck!
First off totally confused what you are trying to do with PostGIS and mapbox. I assumed at first reading you were using Mapbox Studio? So giving you instructions somewhat to do that!
Some notes, I noticed my machine had its process ping out at about 4 GB of memory used by studio during this process, and it pretty much ate all my CPU when uploading tiles (see below). However, I haven't had any crashes. The shapefile was a little over half a GB in size, so thats not bad.
Okay so what I did:
First - get Mapbox Studio here.
Follow the steps here with the quickstart to get an idea of what you are doing. You are going to first load data into studio (just load the shapefile!), select the layers where you want tiles, then upload them to Mapbox (if you have an account).
Some notes on what I did:
Settings
and made the minzoom
16 and the maxzoom
16. This data is far too detailed to be useful at lower zoom levels, and we want to limit how much data has to be uploaded! Settings
after configuring my data source all how I wanted it, I hit Upload to Mapbox
. This step will take some time! This is a large set of data so go grab a beer while you wait or coffee if thats your thing.Alright so now after about 30 minutes, the ~~cookies~~ tiles are done. This is very dense data so it grinded away at ~1 tile/sec for a long time. (I write the code that does a lot of this process and I can tell you there is room for improvement on performance, we are working on making it faster!)^sorry
Now its time to put on the ~~icing~~ styles! Will update with another post in a bit once I get to that.
I'll give you some superficial answers for now and hopefully some other posters will provide more detail.
The most common free GIS software is Quantum GIS. It's quite good and works fine on a Mac.
Any GIS software will certainly be able to handle the issue of mapping images onto a sphere, this is handled by defining a projection for your map. Any GIS software comes with a directory of preset projections for the world. Defining the parameters of the world that isn't Earth is a topic that I would probably characterize as "advanced", but it should be doable. The help topic you would probably want to start with would be "defining a custom projection" or something like that.
I've found the QGIS documentation site to be helpful: http://www.qgis.org/en/docs/index.html#22
They include a "gentle introduction to GIS" which should prove useful for someone just starting to stick their toes into the GIS waters.
The ESRI site has (or did... haven't looked there in a while) a ton of documentation, both free and paid, if he wants to stick with their products.
Edit: clarity.
Hmm, Quantum (http://www.qgis.org/) works for mac. But I'm not quite sure what you want to do here. Do you want to create a polygon for each area? or a just re-georeference that raster map? In which case xinhuj's idea of using google earth, referencing it, then shipping it out as a KML might be easier.
I highly recommend Cynthia Brewer’s book on cartographic design. There’s so much useful stuff to guide or inspire you. Although it’s ESRI press, it really doesn’t matter if you’re an Arc user or not.
damn!
well, my personal opinion is that anyone whose interacting with a computer past the gui, which is what you do as GIS, should have a basic understanding of how to troubleshoot issues and deal with problems. i recommend The Pragmatic Programmer which isn’t so much about programming as it is parts of the thought process.
despite my opinion, your situation doesn’t sound unlike others tbh. i know a lot of developers, myself included, who end up having to do devops or analytic work from time to time, it’s just the name of the game sometimes. my dad’s a dba for a more mature company than the one i work for and the dude never has to touch anything but his sql so i think it may just depend on the company culture. i agree that you shouldn’t be delegated IT tasks, that’s what the developers and dev ops are for, but have you raised this up with your manager? in the end it comes down to what you’re willing to do for that paycheck, and what’ll make you look for another job
I use Amazon EC2 instances for very temporary tasks, or OVH dedicated servers for longer term projects (due to price). But there are many other options. Signing up for Amazon web services is a good start, and going through their tutorial pages.
I am a geography major and am graduating in May. The curriculum here is extremely open and you pretty much have sophomore and junior year open to take whatever you want. As such, I picked up a forestry minor, and my department head (GIS professor) approved taking graduate level GIS courses in my last semester.
Cartography (map production) is only a tiny and basic function of GIS.
The tools provided by GIS software, or custom tools you build yourself with a little programming knowledge allow you to analyze land in almost infinite ways. In my courses I have analyzed soils, land cover, elevation (and the associated data types: aspect, slope, view sheds, etc), population, roads, buildings and much much more.
As a semester long project for one course, we had to take a bunch of different data and build a model to find the best area in a county to site a municipal park. Here is our final report: Google Docs version (check out the last page with the flowchart...it shows all the different data/tools we used in our analysis)
Basically the field is HUGE. You can use GIS for just producing maps, but there are other fields where analysis is key. The big ones to me are Intelligence, Urban Planning, and Natural Resources Conservation. There are many many more applications of GIS then just the ones I listed!
Actually yeah, I have it written up for my research project. Here's a link to the methods and results section: https://docs.google.com/open?id=0BzaVusZ_8l5KYzRiNDdlZGMtZDRmMi00ZmE5LTg5NDUtNWFjZjI4ZjRiNDg4
The tables at the bottom show my results.
If you are using rgb imagery you will have a tricky time getting good results. A near-infrared band will give better results. Here is a link to a paper that uses just fgb imagery. It may be helpful. https://www.researchgate.net/publication/238518740_Research_of_RGB_bands_Quick_Bird_image_land_cover_classification_of_a_sub-watershed_in_Kunming_Dianchi_Lake_Basin
Also, Earth Explorer has some free LiDAR available. Maybe your study area is covered. http://earthexplorer.usgs.gov/
it's your lucky day, I have the USA township/range data.. uploading to mediafire now.. I'll have a link shortly.
https://www.mediafire.com/?qat41iihymv14cr
Odd that the main sites seem down for this data.
Amazon S3 is only $0.023/GB/month for the standard storage, $0.0125/GB/month for infrequent access storage, and $0.004/GB/month for Glacier storage (Glacier has no web interface however for transferring data, you need to write code).
All dirt cheap for your application, especially if you don't store it as JSON, as /u/see_sharp_dotnet said JSON isn't a good storage format because it's so bloated. Even simply converting to a zipped csv would likely be at least 10x smaller.
I think especially python is one of the most valuable additional skills you can have within the GIS scope. I myself used this website to self-teach me some basic python, before participating in an esri training course on python. That, combined with some three years of experience in applying it at least once a month made me quite comfortable with it.
> store multilingual names from geonames.org in my database. And to match the countries I do a LIKE matching with PostGIS(?
this sounds like it should do exactly what you want.
like here https://www.freecodecamp.org/news/fuzzy-string-matching-with-postgresql/
In my work, I used random sampling plotted with GPS combine with drone data and DEM models to determine relationships between found artifacts and localized features like pyramids and mountain draws. I used a kriging model for a lot of my predictive relationships.
You can see a poster talking about it here: https://www.academia.edu/32186518/GIS_and_Drones_in_The_Middle_Moche_Valley_An_Analysis_of_Huaca_Menocucho
I've been self teaching myself python for the last year. I've found these helpful
https://www.udacity.com/course/programming-foundations-with-python--ud036
https://www.e-education.psu.edu/geog485/node/91
The PSU one is specifically about using python in ArcGIS.
This article has some helpful info: https://developer.tomtom.com/blog/decoded/create-geomarketing-mobile-application-using-tomtom-geofencing
So easy in CartoDB (http://cartodb.com)! And definitely this project would fit in the free account. http://docs.cartodb.com/tutorials.html#creating-a-simple-map-of-points is the tutorial that will get you going
I think you could implement this with MapServer but it would take some configuration on your part. I can't find if MapServer generates a REST endpoint but if it does, you can add your data that way.
> but there looks like a lot of experience needed on the back-end if it is deployed to our in-house servers.
You don't need that much experience, but there's no way around it when you host your own.
You don't need Esri products though. They will certainly get the job done, but there are some FOSS options out there that will do just as well for your needs, such as Geoserver.
Admittedly it's not the greatest, but for the simple use cases that you're describing, it'd be fairly easy to get up and running in a day.
Lastly, if you already have a database, geo-enabled or not, you can build your own rest services to push out GeoJSON and consume them through the various APIs such as Google, Leaflet, or OpenLayers.
Regardless though, you will need basemap services. OpenLayers is a great place to start since they're free.
There was a great project where the New York City GIS team actually released the data to OSM. OSM is now used for change intelligence in New York:
https://www.mapbox.com/blog/nyc-and-openstreetmap-cooperating-through-open-data/
Ok lets take a step back. Here are the general steps for creating a map from OSM data:
Here is a tutorial from mapbox on how to do this: https://www.mapbox.com/tilemill/docs/guides/osm-bright-mac-quickstart/#step-0-download--install-required-software
If you just want a styled map check this: https://www.mapbox.com/blog/custom-styles-mapbox-streets/
Else look at this Website: http://openvectormaps.com
Also you can export an svg file from the main page
Edit: I don't know about layer.
And this is is the main problem with osm there are no tools for outside users
Not familiar with Maptitude, but QGIS is free, open-source, and highly customizable. It is especially nice when you have programming knowledge as you can write your own plugins/extensions fairly easily.
QGIS also easily connects to Postgres/PostGIS for database management.
For example, here is a heat map plugin example: QGIS Heat Map Plugin
> What software is normally used? Most professional mapping shops will use ESRI's ArcGIS suite of products. There is also QGIS which is a very nice and well featured opensource alternative. If you start looking at interactive mapping and hosting it on a webpage, there are plenty of javascript mapping extensions, but leaflet is probably the easiest to learn (in my opinion).
> What programming languages can best perform these kinds of tasks? If you are looking at just taking data and putting it on the map, you don't really need to know anything programming related. If you start moving into the interactive side of things, having a grasp of javascript and html by extension would do you good. If you go even further and start looking into data manipulation and scraping, python is your best bet, though I would say that R is a good tool too. You can go pretty far with python and javascript. ESRI also has ArcGIS Online, which is pretty nice, but if you're just learning or trying to have some mapping related fun, it might not be for you. Try github pages for some easy hosting plus code storage.
>And are there any examples people could provide? http://leafletjs.com/examples.html actual conflict map built using leaflet: http://isis.liveuamap.com
Pretty amazing library in how it works, that pipe syntax really does the job well.
Checkout LeafletJS for map-containers also. More your standard type features for dealing with presentation of maps, points, lines and such (even MapServers, TileCache etc). Compared to D3JS where it's just some projections to help you out.
I don't know how to do this in AGOL off the top of my head. If I instead pretend you asked for help with Leaflet I can answer this question...
Add your features (as in the documentation) and then, so for your point layer...
markers.bindPopup("this is some content"); markers.on('mouseover', function (e) {this.openPopup()}); markers.on('mouseout', function (e) {this.closePopup()});
How many markers are we talking about? Is it currently in shapefile format? Will it be continually updated?
If these points are static, I would recommend using the Leaflet API with custom marker symbols. See the tutorial here: http://leafletjs.com/examples/custom-icons.html
If the points are going to be edited a lot, and continually updated, I would suggest putting it in a PostGIS database that hooks in with Geoserver. You would install PostgreSQL and PostGIS on top of that as an extension. Install Geoserver and register the PostGIS instance as a data store. Load the data into PostGIS and use QGIS to edit the points. The changes will automatically be synced up with Geoserver and delivered to your Leaflet map.
(these are all free/open source options)
Let me know if you have specific questions. I just went through this process.
I'd recommend learning Leaflet. It's easy and flexible. http://leafletjs.com/
Google Maps API is pretty easy to learn too, once you have basic HTML/Javascript concepts down.
EDIT: Java =/= JavaScript. You want javaSCRIPT.
I would recommend learning web mapping and Javascript using an open source API like leaflet. They are certainly not as powerful as Arc JS, but are much easier to grasp.
Here's a good place to start: http://leafletjs.com/examples/quick-start.html
OpenStreetMap will have everything you need.
You can download data directly from their website, or use one of their APIs to download larger datasets.
This is cool, but I think it could use some more thoughtful graphic decisions. Like: Do we really need to see all of the streets? Perhaps you create a hierarchy and drop the minor roads.
Also, the colors are crap (IMO!). You can check out Kueler for color wheels as well as Mapbox for design ideas.
Look as beautiful maps, but also graphic design across the board, to develop a legible and exciting personal style.
Good luck hombre!
> Personally, I am still a student learning ArcGIS, but I find it makes rather ugly maps...or I make ugly maps with ArcGIS I should say. How does one make nicer, not artistic, but nicer looking maps in it?
I suspect the reason you're saying this is because while you've taken GIS courses, you haven't taken a Cartography course.
GIS focused more on processing your geographic data. (doing the math and getting it to look half decent)
Cartography is more focused on the representation of that data. (including making it pretty)
Part of being good at both involves knowing where the the line between the two is, tool-wise. ArcGIS (or GIS in general) will get your map about 95% done, but for that last 5% of cartographic polish, you need to export from GIS to a vector-art format (like SVG) and then use software like Adobe Illustrator (expensive) or Inkscape (free open source).
With experience you can eventaully identify when somebody's figures are produced in ArcGIS-alone. It's kinda like how you can identify when a graph is made with Excel rather than something like R.
You would have to learn how to use OpenFoam, a free, open source Computational Fluid Dynamics software package.
[Simulating Wind Over Terrain: How to Build an OpenFOAM Case
from GRASS GIS Digital Elevation Models ](http://www4.ncsu.edu/~ejhardi2/OF_GRASS_Geom.pdf)
You'd then view the results in Paraview. But you need a powerful computer to carry out CFD, a supercomputer is ideal.
I use Google Drive for work, and I sympathize with the "need to download before being able to use it, then upload any changes". That being said, I don't have this problem with drive because I use their app. Basically, with the app, you tell it where you'd like your google drive folder to live on your local (i.e. in My Documents or some such place). The app always runs in the background, making sure that you always have the most recent copy of the file, and any changes you make are uploaded automatically, almost immediately. https://www.google.com/drive/download/
If you think this still may not cut it, consider setting up a file share. Fileshares are great if you have "non-classified" data, all the computers are on the same network. Ping me if you'd like to know more about that option and I'll share what I know.
If you wanted to keep your files local & have a decent internet connection at both ends you could set up SyncThing & keep your GIS data in a synchronized folder.
It's free, and quick to set up so you won't be wasting much time if it doesn't work for you.
It may be the project has renamed itself from OpenJump to just plain old Jump. I've been using their software intermittently for projects as the need arises so I'm not current on their status. I did find a link to this web site: https://sourceforge.net/projects/jump-pilot/?source=navbar
I've been collating GI data repositories for a while. I'm sure many of the repositories I tag link to much of the same data so it may be best to just stick to one, but here are many of my finds: http://www.scoop.it/t/geographic-information-science-by-philip-knight/?tag=Data (PS I've just scooped the Karen Payne list that u/ensign_paris linked to so that's first on the list, great resource).
I use an app on my phone called My Tracks - Records GPS position, speed, etc and gives you a nice map. I think it's targeted more to runners and bicyclist, but might be of use to you.
Check out Cindy Brewer’s book Designing Better Maps for some guidance on map design itself.
Then I suggest checking out the works of John Nelson who does cool things with custom designs.
I use this Asus Zenbook model which I've been really happy with. This one's a little pricier and has a smaller screen than you said you wanted but the Zenbook family has really excellent build quality and power for the money. Amazon actually has a really good deal on this refurbished one today.
A few in the related but essential category:
The Mythical Man Month by fred brooks
The Sciences of the Artificial by herb simon
The Design of Everyday Things by don norman
Sources of Power by gary klein
Hey /u/failuremode!
I'm a "GIS newbie" as well, but I think I could help you!
So what might work the best, is using your phone for your GPS unit. It's not extremely accurate, but will provide information accurate enough for pictures I believe.
Now, depending on what you use as a GIS (Esri, QGIS, or other), that's when things can get sticky.
If you have an android phone, I suggest Map It - GIS Data Collector. Using this application, this will allow you to create simple polygons, lines, and points with associated pictures in the field.
I've been told you can also use Collector for ArcGIS as well to attach field information including photos, but I have not had much experience with it outside of using it for field verification.
What you'll have to do is once these pictures are associated with vector points, you will have to host them onto an online server so they're accessible to your layer (I've used Dropbox before, but check around).
After they're into a dedicated server with a direct URL link, you should be good to go.
On ArcGIS Pro, I know you can format pop-ups whenever you click on a vector point. Here you will insert the image URL and that should be it. I believe the CSV (from Map It) kept the image source files, so you just information in the field.
I might be missing some steps, but I just did a relatively similar project during my internship about two months ago.
Let me know if this helped or if I can help anymore!
GPS Status is what I like to use when out in the field. Not only does it show you the skyplot and signal strength, PDOP, but uses the IMU to put a "bubble level" on the skyplot. It also launches when an app uses the GPS so you can just bring it up via the top pull down.
One of the layers (aree_fruizione_cani) has an undefined coordinate system. Is it the one that failed to convert? Did you also try converting the other layer (bike_SH) with ogr2ogr?
EDIT: corrected the layer name
EDIT2: I'm pretty sure it should be defined as this one
I can definitely recommend Udemy courses! If there are no discounts, I can recommend the freecodecamp (https://www.freecodecamp.org/) and the free GeoPython + Automating GIS courses at the University of Helsinki
This is what I have been using for the past year. I've had very few problems. It only seems to lock up if I'm using very very large Raster data sets, which seems to happen on every computer I've used.
EDIT: I got it with Windows 7, which I highly recommend.
Seriously. This is the seminal work on geospatial analysis. It's very easy to follow. It will teach you what kind of analysis is good for different types of data and why.
I know it is kind of a non-answer, but you it is really important to understand those base principals before you start an analytic project.
Your geofabrik dataset already has additional tagged values, your extraction tools are ignoring them.
This node shows a few of the tags that are available.
Alright I just got it! I selected to display it as a custom symbol and just copied the colour codes to appropriate categories. Looks great, thanks so much for your help! Final result: https://snipboard.io/VgF1ht.jpg
A quick google of the term "ArcGIS tan" revealed the following
http://desktop.arcgis.com/en/arcmap/10.3/tools/spatial-analyst-toolbox/tan.htm
By compound curvature are you referring to the Compound Topographic Index (aka the Topographic Wetness Index)? If so, follow the directions given in the top comment here: https://www.researchgate.net/post/Which_is_the_correct_way_to_calculate_the_topographic_wetness_index_with_ArcGis
Edit: also, here's the calculations for TWI/CTI, which I think is much more simple:
TWI/CTI = a / (tan (beta))
where; a=Upland contributing area: [(flow accumulation + 1 ) * (cellsize)]
Tan(beta)= the tangent of your raster in radians
I'm not an expert on this, but this link suggests band 1 is good for looking at coral health, and 3+2+1 for aquatic habitats (both noisy unfortunately). Not sure what Landsat imagery it's referring to specifically. Next, this link explains methodology using Landsat 5, 7 and 8 specifically for coral health.
I'm very curious if you find one that works, as it's good general knowledge to have. Keep us updated!