IPython Documentation

Table Of Contents

Previous topic

Module: core.displayhook

Next topic

Module: core.error

This Page

Note

This documentation is for a development version of IPython. There may be significant differences from the latest stable release.

Module: core.displaypub

An interface for publishing rich data to frontends.

There are two components of the display system:

  • Display formatters, which take a Python object and compute the representation of the object in various formats (text, HTML, SVG, etc.).
  • The display publisher that is used to send the representation data to the various frontends.

This module defines the logic display publishing. The display publisher uses the display_data message type that is defined in the IPython messaging spec.

2 Classes

class IPython.core.displaypub.DisplayPublisher(**kwargs)

Bases: IPython.config.configurable.Configurable

A traited class that publishes display data to frontends.

Instances of this class are created by the main IPython object and should be accessed there.

clear_output(wait=False)

Clear the output of the cell receiving output.

publish(data, metadata=None, source=None)

Publish data and metadata to all frontends.

See the display_data message in the messaging documentation for more details about this message type.

The following MIME types are currently implemented:

  • text/plain
  • text/html
  • text/markdown
  • text/latex
  • application/json
  • application/javascript
  • image/png
  • image/jpeg
  • image/svg+xml
Parameters:

data : dict

A dictionary having keys that are valid MIME types (like ‘text/plain’ or ‘image/svg+xml’) and values that are the data for that MIME type. The data itself must be a JSON’able data structure. Minimally all data should have the ‘text/plain’ data, which can be displayed by all frontends. If more than the plain text is given, it is up to the frontend to decide which representation to use.

metadata : dict

A dictionary for metadata related to the data. This can contain arbitrary key, value pairs that frontends can use to interpret the data. Metadata specific to each mime-type can be specified in the metadata dict with the same mime-type keys as the data itself.

source : str, deprecated

Unused.

class IPython.core.displaypub.CapturingDisplayPublisher(**kwargs)

Bases: IPython.core.displaypub.DisplayPublisher

A DisplayPublisher that stores

1 Function

IPython.core.displaypub.publish_display_data(data, metadata=None, source=None)

Publish data and metadata to all frontends.

See the display_data message in the messaging documentation for more details about this message type.

The following MIME types are currently implemented:

  • text/plain
  • text/html
  • text/markdown
  • text/latex
  • application/json
  • application/javascript
  • image/png
  • image/jpeg
  • image/svg+xml
Parameters:

data : dict

A dictionary having keys that are valid MIME types (like ‘text/plain’ or ‘image/svg+xml’) and values that are the data for that MIME type. The data itself must be a JSON’able data structure. Minimally all data should have the ‘text/plain’ data, which can be displayed by all frontends. If more than the plain text is given, it is up to the frontend to decide which representation to use.

metadata : dict

A dictionary for metadata related to the data. This can contain arbitrary key, value pairs that frontends can use to interpret the data. mime-type keys matching those in data can be used to specify metadata about particular representations.

source : str, deprecated

Unused.