为 altair Axis 设置 tickMinStep?
Set tickMinStep for altair Axis?
我正在尝试为 altair
中的 x 轴设置 tickMinStep
,以便刻度线每两个出现一次,而不是每个出现一次。
这是我在其中找到 tickMinStep
参数的文档。
https://altair-viz.github.io/user_guide/generated/core/altair.Axis.html
这是我正在使用的示例代码:
import altair as alt
from vega_datasets import data
source = data.movies.url
chart = alt.Chart(source).mark_bar().encode(
alt.X('IMDB_Rating:Q', axis=alt.Axis(title='Rating')),
alt.Y('count()',title="Number of Movies"),
)
这两种方式都无法设置tickMinStep
和returnSchemaValidationError: Invalid specification
。知道为什么这些失败了吗?
1:
chart.configure_axisX(tickMinStep=2)
2:
chart = alt.Chart(source).mark_bar().encode(
alt.X('IMDB_Rating:Q', axis=alt.Axis(title='Rating', tickMinStep=2)),
alt.Y('count()',title="Number of Movies"),
)
第一种方法不起作用,因为 tickMinStep
不是可配置的选项(它不是 alt.AxisConfig
支持的参数之一)。
tickMinStep
选项已添加到 Altiar 3.0 版的 alt.Axis
中,因此尝试将其与较早的 Altair 版本一起使用会导致您看到的模式错误。更新您的 Altair 安装,您的第二个代码块应该可以正常工作。
我正在尝试为 altair
中的 x 轴设置 tickMinStep
,以便刻度线每两个出现一次,而不是每个出现一次。
这是我在其中找到 tickMinStep
参数的文档。
https://altair-viz.github.io/user_guide/generated/core/altair.Axis.html
这是我正在使用的示例代码:
import altair as alt
from vega_datasets import data
source = data.movies.url
chart = alt.Chart(source).mark_bar().encode(
alt.X('IMDB_Rating:Q', axis=alt.Axis(title='Rating')),
alt.Y('count()',title="Number of Movies"),
)
这两种方式都无法设置tickMinStep
和returnSchemaValidationError: Invalid specification
。知道为什么这些失败了吗?
1:
chart.configure_axisX(tickMinStep=2)
2:
chart = alt.Chart(source).mark_bar().encode(
alt.X('IMDB_Rating:Q', axis=alt.Axis(title='Rating', tickMinStep=2)),
alt.Y('count()',title="Number of Movies"),
)
第一种方法不起作用,因为 tickMinStep
不是可配置的选项(它不是 alt.AxisConfig
支持的参数之一)。
tickMinStep
选项已添加到 Altiar 3.0 版的 alt.Axis
中,因此尝试将其与较早的 Altair 版本一起使用会导致您看到的模式错误。更新您的 Altair 安装,您的第二个代码块应该可以正常工作。