Some members are right in saying that Data can be skewed.
It all depends on which DSLAM (The system that your Home/Work Router terminates to when using ADSL/VDSL etc) and also who your provider is. For example, If you're in the South West and on PlusNet for example. Your connection almost all the time will show up as in London (Most likely the Global Switch Data Centre - where a few ISP's have their terminating kit).
Virgin Media is reasonably accurate, as they have street cabinets, that all route to a major node. So if you're for example the Frome, Westbury or Warminster areas, you'll terminate to the Trowbridge Node. So you'll normally show up in Trowbridge or as near as.
BT is a nightmare of an Internet Network. As they are known as the "Principle Operator" of the PTSN (Public Telephone Switching Network) Exchanges, they can terminate your connection anywhere that there is capacity at the time. So you may be in Exeter for example, but your connection may show up somewhere really obscure and miles away from where you actually are.
Also the majority of ISP's give out Dynamic IP Addresses. So if you unplug your router and plug it in again, the chances are you'll get a completely new IP Address, which could show up as somewhere completely different.
o2 Broadband has a habit for skewing geographic data too. My backup connection at my office in Frome normally shows up in Bracknell or Slough - of which I am nowhere near either.
Interestingly enough though. It depends on the operator and if they have an LLU agreement with BT in the area. What this is, is where the ISP have installed their own equipment and backbone connections into a BT Exchange for their customers. TalkTalk do this for example. If you're in a TalkTalk LLU area and you want to switch just your broadband to another ISP. It doesn't work, as TalkTalk use their own backbone lines and servers for the telephone lines and in actuality, all they pay BT Openreach (Company who own the telephone network; a completely different company from BT Retail and BT Business Retail) for is the rental for the copper wire from the BT Exchange to the customer premises (There's an acronym for that too, think it's CPE but it's 1:58AM and my mind is fried from staring at Exchange Server Logs Files all day
) They also pay a service fee for the line in case a problem develops on the line between the CPE and Exchange and they are required to actually fix it.
3G is a different kettle of fish altogether. My understanding (Although this may have changed since) was that you don't have a "Public IP" on a 3G network. What actually happens is the provider is running a massive NAT network. There is always 1 PoP (Point of Presence) depending on the location. I did a test on this on Hutchinson 3G. Travel from Taunton to London and the last time i did this my terminating location was Slough - which didn't change. This would make sense as there is a huge amount of Data Centre's and Internet Pipes in that area. Rackspace (Mods please note that this isn't an advertisement as I am not connected with them in any way) have one of their 9 Cloud Data Centres in Slough. You may have seen recently the "Bang Goes The Theory" regarding IT and Mobile Security, where they did an interview with a Cloud Hosting Provider. Although the program said they couldn't declare the providers name... Anyone in the Internet Connectivity area of IT knows it was Rackspace!
Incidentally, last year Thames Water dug up the Fibre Cables in Slough. This caused everyone on traditional BT 20cn and 21cn connections i.e. connections that use the BT Network to effectively piggyback to the ISP network (As is the case with an Internet Connection on any rural exchange or exchange with no LLU providers) to completely crash. It took out the entire southwest. However, users on LLU services such as o2 and TalkTalk were mostly unaffected as they use their own equipment.
Sorry, I really went on there didn't I! But I run a business which focuses on Internet Collaboration hence why I pick up this useless information... Which one day may actually prove useful to somebody!
*edit* removed a typo which was a typo, but said typo manifested itself as a rather rude word which has happened twice this morning!