:orphan:
:html_theme.sidebar_secondary.remove:
.. This document is auto-generated by the altair-gallery extension. Do not modify directly.
.. _gallery_scatter_qq:
Quantile-Quantile Plot
----------------------
A quantile-quantile plot comparing input data to theoretical distributions.
.. altair-plot::
:remove-code:
import altair as alt
from vega_datasets import data
source = data.normal_2d.url
base = alt.Chart(source).transform_quantile(
'u',
step=0.01,
as_ = ['p', 'v']
).transform_calculate(
uniform = 'quantileUniform(datum.p)',
normal = 'quantileNormal(datum.p)'
).mark_point().encode(
alt.Y('v:Q')
)
base.encode(x='uniform:Q') | base.encode(x='normal:Q')
# No channel encoding options are specified in this chart
# so the code is the same as for the method-based syntax.
.. tab-set::
.. tab-item:: Method syntax
:sync: method
.. code:: python
import altair as alt
from vega_datasets import data
source = data.normal_2d.url
base = alt.Chart(source).transform_quantile(
'u',
step=0.01,
as_ = ['p', 'v']
).transform_calculate(
uniform = 'quantileUniform(datum.p)',
normal = 'quantileNormal(datum.p)'
).mark_point().encode(
alt.Y('v:Q')
)
base.encode(x='uniform:Q') | base.encode(x='normal:Q')
.. tab-item:: Attribute syntax
:sync: attribute
.. code:: python
import altair as alt
from vega_datasets import data
source = data.normal_2d.url
base = alt.Chart(source).transform_quantile(
'u',
step=0.01,
as_ = ['p', 'v']
).transform_calculate(
uniform = 'quantileUniform(datum.p)',
normal = 'quantileNormal(datum.p)'
).mark_point().encode(
alt.Y('v:Q')
)
base.encode(x='uniform:Q') | base.encode(x='normal:Q')
# No channel encoding options are specified in this chart
# so the code is the same as for the method-based syntax.