# tf.summary.scalar

<br />

|---|
| [![](https://www.tensorflow.org/images/GitHub-Mark-32px.png) View source on GitHub](https://github.com/tensorflow/tensorboard/tree/2.13.0/tensorboard/plugins/scalar/summary_v2.py#L30-L94) |

Write a scalar summary.

    tf.summary.scalar(
        name, data, step=None, description=None
    )

See also [`tf.summary.image`](https://www.tensorflow.org/versions/r2.13/api_docs/python/tf/summary/image), [`tf.summary.histogram`](https://www.tensorflow.org/versions/r2.13/api_docs/python/tf/summary/histogram), [`tf.summary.SummaryWriter`](https://www.tensorflow.org/versions/r2.13/api_docs/python/tf/summary/SummaryWriter).

Writes simple numeric values for later analysis in TensorBoard. Writes go to
the current default summary writer. Each summary point is associated with an
integral `step` value. This enables the incremental logging of time series
data. A common usage of this API is to log loss during training to produce
a loss curve.

#### For example:

    test_summary_writer = tf.summary.create_file_writer('test/logdir')
    with test_summary_writer.as_default():
        tf.summary.scalar('loss', 0.345, step=1)
        tf.summary.scalar('loss', 0.234, step=2)
        tf.summary.scalar('loss', 0.123, step=3)

Multiple independent time series may be logged by giving each series a unique
`name` value.

See [Get started with TensorBoard](https://www.tensorflow.org/tensorboard/get_started)
for more examples of effective usage of [`tf.summary.scalar`](https://www.tensorflow.org/versions/r2.13/api_docs/python/tf/summary/scalar).

In general, this API expects that data points are logged iwth a monotonically
increasing step value. Duplicate points for a single step or points logged out
of order by step are not guaranteed to display as desired in TensorBoard.

<br />

<br />

<br />

| ## Arguments ||
|---|---|
| `name` | A name for this summary. The summary tag used for TensorBoard will be this name prefixed by any active name scopes. |
| `data` | A real numeric scalar value, convertible to a `float32` Tensor. |
| `step` | Explicit `int64`-castable monotonic step value for this summary. If omitted, this defaults to `tf.summary.experimental.get_step()`, which must not be None. |
| `description` | Optional long-form description for this summary, as a constant `str`. Markdown is supported. Defaults to empty. |

<br />

<br />

<br />

<br />

| ## Returns ||
|---|---|
| True on success, or false if no summary was written because no default summary writer was available. ||

<br />

<br />

<br />

<br />

| ## Raises ||
|---|---|
| `ValueError` | if a default writer exists, but no step was provided and `tf.summary.experimental.get_step()` is None. |

<br />