我有一个以原点为中心的散点图。我想用粗体绘制原点网格线(一条水平线,一条垂直线),以便更容易看到原点在哪里。
我可以制作两个单独的规则图,每个规则图中有一条线,并将它们放在散点图下,但这很烦人。有更简单的方法吗?
extent = 1.0
scale = alt.Scale(domain=(-extent, extent))
base = alt.Chart(pd.DataFrame([[0, -extent, extent]])).mark_rule()
xaxis = base.encode(
alt.Y('0:Q', scale=scale),
alt.X('1:Q'),
alt.X2('2:Q'),
)
yaxis = base.encode(
alt.X('0:Q', scale=scale),
alt.Y('1:Q'),
alt.Y2('2:Q'),
)
xaxis + yaxis + scatter
domainWidth
在configure_axisX
或configure_axisY
中设置'轴线'的厚度:
import altair as alt
from vega_datasets import data
source = data.cars()
alt.Chart(source).mark_circle(size=60, clip=False).transform_calculate(
x = alt.datum.Horsepower-100,
y = alt.datum.Miles_per_Gallon - 25
).encode(
x=alt.X('x:Q', axis=alt.Axis(offset=-150)),
y=alt.Y('y:Q', axis=alt.Axis(offset=-190)),
color='Origin',
).configure_axisX(
domainWidth =3
).configure_axisY(
domainWidth =3
)