Python 3.x 使用回归线可视化牵牛星中多个列的快速方法
因此,我在Altair中快速可视化多个列的方法是使用Python 3.x 使用回归线可视化牵牛星中多个列的快速方法,python-3.x,pandas,altair,Python 3.x,Pandas,Altair,因此,我在Altair中快速可视化多个列的方法是使用repeat。在我想使用transform\u regression添加回归线或使用mark\u text添加文本之前,此方法是可行的,因为它不允许我在使用repeat时添加层 Pandas使使用df.corr获得完整df的相关性变得非常容易。如果能有一些快速可视化所有/多个列的方法,那就太好了 示例代码: import altair as alt from vega_datasets import data from altair.expr
repeat
。在我想使用transform\u regression
添加回归线或使用mark\u text
添加文本之前,此方法是可行的,因为它不允许我在使用repeat
时添加层
Pandas使使用df.corr
获得完整df的相关性变得非常容易。如果能有一些快速可视化所有/多个列的方法,那就太好了
示例代码:
import altair as alt
from vega_datasets import data
from altair.expr import datum
iris = data.iris()
chart = alt.Chart(iris).mark_circle().encode(
alt.X(alt.repeat("column"), type='quantitative'),
alt.Y(alt.repeat("row"), type='quantitative'),
color='species:N'
).properties(
width=100,
height=100
).repeat(
row=['sepalLength', 'sepalWidth', 'petalLength','petalWidth'],
column=['petalWidth','petalLength', 'sepalWidth', 'sepalLength']
)
chart
下面是代码的输出
所以我的问题是:当使用
repeat
时,有没有一种方法可以快速添加任何额外内容,例如回归线?如果不是,在添加额外数据的同时,快速可视化多列数据的最佳途径是什么 代替重复,您可以使用两个折叠变换和一个行/列方面,然后可以直接应用回归变换。以下是一个例子:
import altair as alt
import pandas as pd
base = alt.Chart(iris).transform_fold(
['sepalLength', 'sepalWidth', 'petalLength','petalWidth'],
as_=['key_x', 'value_x']
).transform_fold(
['sepalLength', 'sepalWidth', 'petalLength','petalWidth'],
as_=['key_y', 'value_y']
).encode(
x=alt.X('value_x:Q', title=None),
y=alt.Y('value_y:Q', title=None),
).properties(
width=100,
height=100
)
alt.layer(
base.mark_circle().encode(color='species:N'),
base.transform_regression(
'value_x', 'value_y',
groupby=['key_x', 'key_y', 'species']
).mark_line(
color='black'
).encode(
detail='species:N'
)
).facet(
column=alt.Column('key_x:N', title=None),
row=alt.Row('key_y:N', sort='descending')
).resolve_scale(
x='independent',
y='independent'
)