Edit on GitHub
Report issue
Page history

Using Matplotlib to visualize Cloud Monitoring metrics for Cloud Bigtable

Author(s): @waprin ,   Published: 2017-06-13

Bill Prin | Google

Contributed by Google employees.

Cloud Monitoring is a service that collects metrics, events, and metadata from Google Cloud or Amazon Web Services (AWS).

Cloud Monitoring comes with a built-in console for exploring metrics and plotting figures. To see this console:

  1. Open the Cloud Console.
  2. Sign in and create or select an account, if prompted.

Many useful charts are automatically created for you, and many more custom graphs can be built within the console. For Cloud Bigtable, some charts can be found in the Bigtable console, as well as in the Metrics Explorer.

As an alternative approach, you can use the Python library Matplotlib in conjunction with the Google Cloud Python client library, and its built-in integration with the pandas data science library, to make sophisticated graphs.

This tutorial demonstrates some simple plotting to help you get started, in conjunction with the sample code for programmatically scaling Cloud Bigtable.

The Stackdriver Python client library can be used either in standard Jupyter notebooks or with Datalab. This tutorial focuses on vanilla Jupyter.

Jupyter notebooks allow you to create interactive, annotated notebooks that can be shared with others. Because the sample notebook relies on default authentication and project configurations, plots and figures created using your data are automatically repopulated with the data of the users you share the notebook with, when they run your notebook.

You can read a more in-depth introduction to Cloud Monitoring client using Cloud Datalab.

This tutorial explores Cloud Bigtable metrics during a loadtest and while running the sample code for scaling Cloud Bigtable programmatically.


This tutorial assumes some familiarity with Python development, including virtualenv and pip. Previous knowledge of Google Cloud, Jupyter, pandas, and Matplotlib is helpful.


  1. Install Jupyter and the Python Stackdriver dependencies.
  2. Explore basic plotting of Bigtable metrics during a scaling event.


This tutorial uses billable components of Google Cloud, including:

  • Bigtable
  • Cloud Monitoring

Use the Pricing Calculator to generate a cost estimate based on your projected usage.

Before you begin

  1. Create a project in the Cloud Console.
  2. Enable billing for your project.
  3. Install the Cloud SDK.
  4. Create a client ID to run the sample code:

    gcloud auth application-default login

Getting started

  1. Install Jupyter by following the installation instructions.

  2. Install virtualenv by following the installation instructions.

  3. Create and activate a virtualenv virtual environment.

  4. Download requirements.txt and use pip to install the required components:

    pip install -r requirements.txt

Loading the notebook

Download the tutorial notebook.

With the necessary dependencies installed into the virtualenv environment, start a new Jupyter notebook:

jupyter notebook

Open the Jupyter notebook in the browser. From there you can follow the tutorial to see how basic Bigtable metrics are plotted and how they respond to programmatic scaling.

Submit a tutorial

Share step-by-step guides

Submit a tutorial

Request a tutorial

Ask for community help

Submit a request

View tutorials

Search Google Cloud tutorials

View tutorials

Except as otherwise noted, the content of this page is licensed under the Creative Commons Attribution 4.0 License, and code samples are licensed under the Apache 2.0 License. For details, see our Site Policies. Java is a registered trademark of Oracle and/or its affiliates.