Symbols and Heatmaps in the Google Maps API

The Google Maps API provides a robust platform in which you can add geographical context to your data in a variety of ways. Data visualization is therefore one of the elements at the heart of the Maps API, and today we’re introducing two new techniques for visualizing your data in flexible and dynamic ways.

Symbols

At SXSW Interactive in 2011, I attended a session on geotemporal data visualization that made me keen to make it easier for Maps API developers to build visualizations similar to those discussed. For this reason I’m particularly excited to introduce a simple, yet powerful, new concept to the Maps API v3 that we call Symbols.

Unlike the image icons currently used for marking locations on a map, a Symbol is defined as a vector shape. The size, stroke width, color, and opacity of the shape, are all set by the Maps API application and can be dynamically modified. A small number of shapes, such as a circle, are provided by the Maps API, and custom shapes can be expressed as an SVG path.

Symbols open up a wide range of compelling new possibilities for data visualization and visual effects. For example, the below map illustrates the expansion of the Walmart chain of stores between 1962 and 2006:

In addition to using symbols to represent point features you can also decorate polylines with Symbols. One or more symbols, such as an arrowhead, can be placed at fixed positions on the polyline or repeated along the polyline. Because the polyline that has been decorated does not need to be visible, this feature can also be used to created dotted or dashed polylines, and just as the style of the symbols can be dynamically modified, so too can their location on the polyline:

Heatmaps

Developers often ask how they can represent large amounts of data on a map. Improvements in web browser technology have increased the number of markers that can be rendered by a Maps API application, but above a certain threshold the density of markers can overwhelm the user.

An alternative approach is to use a heatmap, and to enable this approach we’re launching support for browser rendering of heatmaps by the Maps API using the new Heatmap Layer. Your Maps API application can define the colour spectrum, intensity range, and behaviour of the heatmap when the map is zoomed. Here’s the Walmart example from above, but this time visualized as a heatmap:

If you have any technical questions about these new features, we recommend engaging with our developer community online, or joining our regular Google Maps API Office Hours. If you’re at I/O come see us in person at Office Hours in the Google Maps developer sandbox.

 

Very important update for SketchUp 8

In the world of software, the designation “M2” refers to “Maintenance Release #2”. Maintenance releases are mini-versions that come out between major updates. They aren’t really about flashy new features; they’re more like tune-ups for your car; squeaks and rattles get fixes, tires are rotated, fluids are changed. You get the picture.

It’s been a few months since we released M1; since then, we’ve collected a fresh batch of performance tweaks and bug fixes—over 150 of them, in fact. M2 is a free update for all users of SketchUp 8 and SketchUp Pro 8 in all 12 languages. The best way to get it is to open SketchUp and do this:

Windows: Choose Help > Check for Update
Mac: Choose SketchUp > Check Web for Update

Having stated that maintenance releases aren’t always flashy, we couldn’t resist adding a few shiny, new things that we think you’ll appreciate:

Better Ruby Script Installation

We’ve had a way for other folks to build SketchUp plugins and extensions for years. Anyone with coding skills can use the Ruby API (application programming interface) to whip up new tools that they can distribute any way they like. People have created thousands of great scripts—we consider the API one of the most useful things we’ve done.

The tricky part has always been teaching SketchUp modelers how to install and access the Ruby scripts (Rubies) that they want to use. Adding a sophisticated Ruby used to involve finding a specific folder on your system and putting a bunch of files in all the right places. Try explaining how to do that to your boss.

The Extensions panel in SketchUp Preferences has a new button…

 

In SketchUp 8 M2, we’ve added two features that should make using Rubies a whole lot easier: The first is a new button on the Extensions panel in SketchUp Preferences. Clicking it lets you install any properly-configured “.RBZ” (ruby zip) file, which puts the needed files into the correct spot, without having to dig around in your computer’s file system. It’s simple, but huge. We’ve also added a lightweight set of “hooks” in the API that should help scripters build their own script-management tools.

Better COLLADA

All versions of SketchUp 8 can read and write COLLADA, a 3D file format that works with lots of other 3D software. It’s managed by the Khronos Group, an industry consortium that decides which features COLLADA should support. As of M2, SketchUp’s import/export support for COLLADA is now compliant with over 90% of the official Khronos compatibility test suite, only leaving out support for animations and shaders—neither of which can be authored in SketchUp anyway.

We think you’ll like SketchUp 8 M2’s ability to seamlessly import and export clean and compliant COLLADA geometry. One particular thing to note: SketchUp now preserves texture names in exported files. This makes it easier to work with COLLADA files in 3rd party rendering tools.

Advanced Camera Tools included in Pro

Back in March, we announced the Advanced Camera Tools for SketchUp Pro 8. The ACTs let set designers, cinematographers, storyboard artists and other people in the entertainment industry work with simulated real-world cameras in their SketchUp models. Until now, the ACTs were a separate plugin that you had to install. In M2, they’re built right into every copy of SketchUp Pro 8.

More Straightforward Pro Trials

After you download and install SketchUp Pro, you can try all of the Pro features for 8 hours (of use) before deciding to buy a license. Up until now, we’ve simply switched off the Pro stuff if you don’t enter a license after the trial period. Effectively, Pro reverted to being just like regular ol’ SketchUp.

The problem was that lots of people didn’t realize that they weren’t actually running Pro anymore. Even worse, folks who had bought Pro licenses and had forgotten (or otherwise been unable) to activate those licenses were missing out on all the great stuff they’d paid for. Our Pro Support team has been fielding dozens of “Why can’t I import a CAD file?” questions per day. It’s been a bit of a mess.

Starting with SketchUp 8 M2, the SketchUp Pro Trial will no longer revert to “free mode” when the trial period expires. A separate version of SketchUp will still be available to download for free, but SketchUp Pro will require a valid license file to run after your trial period has expired.

Mac OS 10.7 Compatibility

Users of Apple’s latest operating system, take note: SketchUp 8 is fully compatible with your hardware. And I ain’t lion. Rawr.

Introduction of usage limits to the Maps API

When the Maps API Terms of Service were updated in April of this year we announced that usage limits would be introduced to the Maps API starting on October 1st. With October upon us, I’d like to provide an update on how these limits are being introduced, and the impact it will have on your Maps API sites.

The usage limits that now apply to Maps API sites are documented in the Maps API FAQ. However no site exceeding these limits will stop working immediately. We understand that developers need time to evaluate their usage, determine if they are affected, and respond if necessary. There are three options available for sites that are exceeding the limits:

To assist in evaluating whether your site is exceeding the usage limits we will shortly be adding the Maps API to the Google APIs Console. Once available you will be able to track your usage in the APIs Console by providing an APIs Console key when you load the Maps API. If you find that your site does exceed the usage limits each day you can opt to pay for your excess usage by enabling billing on your APIs Console project. We will then start billing excess usage to your credit card when we begin enforcing the usage limits in early 2012.

For very popular sites Maps API Premier is likely to be a more cost effective option. It also offers a number of additional benefits, including terms that permit for-fee and internal use, enterprise technical support, a Service Level Agreement, fixed and invoiced annual pricing, and increased quotas for the Maps API Web Services. For more information on how Maps API Premier could benefit your application please contact the Sales team using this form.

We will announce the availability of the Maps APIs in the APIs Console on this blog later this quarter, and provide more details on how to set up an APIs Console account and update your Maps API application with an APIs Console key. We will also provide at least 30 days notice on this blog before enforcement of the usage limits and billing for excess usage begins.

We understand that the introduction of these limits may be concerning. However with the continued growth in adoption of the Maps API we need to secure its long term future by ensuring that even when used by the highest volume for-profit sites, the service remains viable. By introducing these limits we are ensuring that Google can continue to offer the Maps API for free to the vast majority of developers for many years to come.