:orphan:
:html_theme.sidebar_secondary.remove:
.. This document is auto-generated by the altair-gallery extension. Do not modify directly.
.. _gallery_top_k_items:
Top K Items
-----------
This example shows how to use the window and transformation filter to display
the Top items of a long list of items in decreasing order.
Here we sort the top 10 highest ranking movies of IMDB.
.. altair-plot::
:remove-code:
import altair as alt
from vega_datasets import data
source = data.movies.url
# Top 10 movies by IMBD rating
alt.Chart(
source,
).mark_bar().encode(
x=alt.X('Title:N', sort='-y'),
y=alt.Y('IMDB_Rating:Q'),
color=alt.Color('IMDB_Rating:Q')
).transform_window(
rank='rank(IMDB_Rating)',
sort=[alt.SortField('IMDB_Rating', order='descending')]
).transform_filter(
(alt.datum.rank < 10)
)
.. tab-set::
.. tab-item:: Method syntax
:sync: method
.. code:: python
import altair as alt
from vega_datasets import data
source = data.movies.url
# Top 10 movies by IMBD rating
alt.Chart(
source,
).mark_bar().encode(
alt.X('Title:N').sort('-y'),
alt.Y('IMDB_Rating:Q'),
alt.Color('IMDB_Rating:Q')
).transform_window(
rank='rank(IMDB_Rating)',
sort=[alt.SortField('IMDB_Rating', order='descending')]
).transform_filter(
(alt.datum.rank < 10)
)
.. tab-item:: Attribute syntax
:sync: attribute
.. code:: python
import altair as alt
from vega_datasets import data
source = data.movies.url
# Top 10 movies by IMBD rating
alt.Chart(
source,
).mark_bar().encode(
x=alt.X('Title:N', sort='-y'),
y=alt.Y('IMDB_Rating:Q'),
color=alt.Color('IMDB_Rating:Q')
).transform_window(
rank='rank(IMDB_Rating)',
sort=[alt.SortField('IMDB_Rating', order='descending')]
).transform_filter(
(alt.datum.rank < 10)
)