python altair折线图按计数截断

python altair折线图按计数截断,python,visualization,altair,Python,Visualization,Altair,我目前正试图在牛郎星上剪下一张折线图。到目前为止,我的代码是: Chart(orient_frame).mark_line().encode( x = X('year:O'), y = Y('count(type:N)', scale=Scale(domain=(0,2500)), color = Color('type:N') ) 计数(类型:N)上升到超过9100的值,我想将它们完全从图中删除。但是Scale()并没有切掉这条线,所以有一条线“从图中

我目前正试图在牛郎星上剪下一张折线图。到目前为止,我的代码是:

    Chart(orient_frame).mark_line().encode(
    x = X('year:O'),
    y = Y('count(type:N)', scale=Scale(domain=(0,2500)),
    color = Color('type:N')
    )
计数(类型:N)上升到超过9100的值,我想将它们完全从图中删除。但是Scale()并没有切掉这条线,所以有一条线“从图中射出”

我也已经试过了

    Chart(orient_frame).mark_line().encode(
        x = X('year:O'),
        y = Y('count(type:N)'),
        color = Color('type:N')
    ).transform_data(
        filter='count(type:N) < 2500'
    )
在本例中,我想“放大”到“是/否”答案,因为我不关心答案


我可以修正刻度,但我不能阻止“也许”的刻度线上升整整20个刻度。

根据设计,牵牛星不会隐藏任何数据。见:

但是,如果仍然希望隐藏一些数据,则需要使用
clamp
参数

import altair as al
import pandas as pd

#Create a simple 1 variable example
answers = ['No' for _ in range(3)]
answers.extend(['Yes' for _ in range(5)])
answers.extend(['Maybe' for _ in range(20)])

dataframe = pd.DataFrame({'var1': answers})

#create Chart
al.Chart(dataframe).mark_bar().encode(
    x=al.X('var1:N'),
    y=al.Y('count(*):Q', scale=al.Scale(domain=(0, 6), clamp=True))

)
这将产生以下输出


你能举一个简单的工作示例吗,这样我们就可以用DF来找出哪里出了问题。@NipunBatra当然,我会把它添加到原始问题中。谢谢!我之前尝试过clamp=True,但没有将:Q添加到y轴上的计数(*):Q。这似乎是强制性的夹紧选项…对不起,我忘了^^
import altair as al
import pandas as pd

#Create a simple 1 variable example
answers = ['No' for _ in range(3)]
answers.extend(['Yes' for _ in range(5)])
answers.extend(['Maybe' for _ in range(20)])

dataframe = pd.DataFrame({'var1': answers})

#create Chart
al.Chart(dataframe).mark_bar().encode(
    x=al.X('var1:N'),
    y=al.Y('count(*):Q', scale=al.Scale(domain=(0, 6), clamp=True))

)