Skip to content

Commit

Permalink
docs: Adds example Calculate Residuals (#3625)
Browse files Browse the repository at this point in the history
  • Loading branch information
dangotbanned authored Oct 3, 2024
1 parent 17968ea commit add5822
Show file tree
Hide file tree
Showing 2 changed files with 70 additions and 0 deletions.
37 changes: 37 additions & 0 deletions tests/examples_arguments_syntax/calculate_residuals.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,37 @@
"""
Calculate Residuals
-------------------
A dot plot showing each movie in the database, and the difference from the average movie rating.
The display is sorted by year to visualize everything in sequential order.
The graph is for all Movies before 2019.
Adapted from `Calculate Residuals <https://vega.github.io/vega-lite/examples/joinaggregate_residual_graph.html>`_.
"""
# category: advanced calculations

import altair as alt
from vega_datasets import data

imdb_rating = alt.datum["IMDB_Rating"]
source = data.movies.url

chart = (
alt.Chart(source)
.mark_point()
.transform_filter(imdb_rating != None)
.transform_filter(
alt.FieldRangePredicate("Release_Date", [None, 2019], timeUnit="year")
)
.transform_joinaggregate(Average_Rating="mean(IMDB_Rating)")
.transform_calculate(Rating_Delta=imdb_rating - alt.datum.Average_Rating)
.encode(
x=alt.X("Release_Date:T", title="Release Date"),
y=alt.Y("Rating_Delta:Q", title="Rating Delta"),
color=alt.Color(
"Rating_Delta:Q",
title="Rating Delta",
scale=alt.Scale(domainMid=0),
),
)
)
chart
33 changes: 33 additions & 0 deletions tests/examples_methods_syntax/calculate_residuals.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,33 @@
"""
Calculate Residuals
-------------------
A dot plot showing each movie in the database, and the difference from the average movie rating.
The display is sorted by year to visualize everything in sequential order.
The graph is for all Movies before 2019.
Adapted from `Calculate Residuals <https://vega.github.io/vega-lite/examples/joinaggregate_residual_graph.html>`_.
"""
# category: advanced calculations

import altair as alt
from vega_datasets import data

imdb_rating = alt.datum["IMDB_Rating"]
source = data.movies.url

chart = (
alt.Chart(source)
.mark_point()
.transform_filter(imdb_rating != None)
.transform_filter(
alt.FieldRangePredicate("Release_Date", [None, 2019], timeUnit="year")
)
.transform_joinaggregate(Average_Rating="mean(IMDB_Rating)")
.transform_calculate(Rating_Delta=imdb_rating - alt.datum.Average_Rating)
.encode(
x=alt.X("Release_Date:T").title("Release Date"),
y=alt.Y("Rating_Delta:Q").title("Rating Delta"),
color=alt.Color("Rating_Delta:Q").title("Rating Delta").scale(domainMid=0),
)
)
chart

0 comments on commit add5822

Please sign in to comment.