Python 绘制直方图的线图

Python 绘制直方图的线图,python,line,histogram,altair,vega-lite,Python,Line,Histogram,Altair,Vega Lite,我正在尽可能多地用牵牛星复制这张图表。 我被困在通过/不通过的黑线分隔线上。这与此牵牛星示例类似:。 但是:在538 viz中,最终日期的值必须扩展到最后一个元素的全宽。在步骤图示例和我的解决方案中,只要满足最后一个日期元素,该行就会停止 我查看了altair的github和google小组,没有发现类似的问题 将altair导入为alt 作为pd进口熊猫 电影=pd.read\u csv('https://raw.githubusercontent.com/fivethirtyeight/d

我正在尽可能多地用牵牛星复制这张图表。

我被困在通过/不通过的黑线分隔线上。这与此牵牛星示例类似:。 但是:在538 viz中,最终日期的值必须扩展到最后一个元素的全宽。在步骤图示例和我的解决方案中,只要满足最后一个日期元素,该行就会停止

我查看了altair的github和google小组,没有发现类似的问题

将altair导入为alt
作为pd进口熊猫
电影=pd.read\u csv('https://raw.githubusercontent.com/fivethirtyeight/data/master/bechdel/movies.csv')
域=['ok'、'dubious'、'men'、'notalk'、'nowomen']
base=alt.Chart(电影)。编码(
alt.X(“年份:N”,bin=alt.BinParams(步长=5,范围=[19702015]),axis=alt.axis(labelAngle=0,labelLimit=50,labelFontSize=8),title=None),alt.Y(“count()”,stack='normalize',title=None,axis=alt.axis(格式='%',值=[0,0.25,0.50,0.75,1]))
).属性(宽度=400)
main=base.transform\u calculate(cleanrank='datum.clean\u test==“ok”?1:datum.clean\u test==“可疑”?2:datum.clean\u test==“人”?3:datum.clean\u test==“notalk”?4:5'
).mark_条(stroke='white'#添加水平线
).encode(
alt.Color(“清洁试验:N”,刻度=alt.scale(
域=域,
范围=[‘道奇蓝’、‘天蓝’、‘粉红’、‘珊瑚’、‘红色’]))
,order=alt.order('clearnank:O',sort='升序')
)
extra=基本转换计算(cleanpass='datum.clean\u test==“ok”?“PASS”:datum.clean\u test==“可疑”?“PASS”:“FAIL”
).mark_线(内插class='step-after'
).encode(alt.Color(“cleanpass:N”,scale=alt.scale(域=['PASS','FAIL'],范围=['black','white']))
)
alt.layer(主、附加)。配置\u比例(
带状填充器=0.01#较小的垂直线
).resolve_scale(color='independent')