Я создал базовую c диаграмму рассеяния для сравнения двух переменных, используя altair. Я ожидаю, что переменные будут сильно коррелированы, и точки должны оказаться на линии идентичности или близко к ней.
Как я могу добавить линию идентичности к графику?
Я хотел бы это линия, похожая на линию, созданную mark_rule
, но растянутая по диагонали, а не по вертикали или горизонтали.
Вот, насколько я понял:
import altair as alt
import numpy as np
import pandas as pd
norm = np.random.multivariate_normal([0, 0], [[2, 1.8],[1.8, 2]], 100)
df = pd.DataFrame(norm, columns=['var1', 'var2'])
chart = alt.Chart(df, width=500, height=500).mark_circle(size=100).encode(
alt.X('var1'),
alt.Y('var2'),
).interactive()
line = alt.Chart(
pd.DataFrame({'var1': [-4, 4], 'var2': [-4, 4]})).mark_line().encode(
alt.X('var1'),
alt.Y('var2'),
).interactive()
chart + line
Проблемы с этот пример показывает, что при масштабировании линия не расширяется вечно (как метка правила) и что график автоматически масштабируется до концов линий, а не только до точек.