擅长:python、mysql、java
<p>您不应使用过滤数据手动创建图层,而应在完整数据集上使用颜色编码:然后将自动生成图例</p>
<p>例如:</p>
<pre><code>import altair as alt
import pandas as pd
babyData = pd.read_csv('https://www.stat.berkeley.edu/users/statlabs/data/babiesI.data', delim_whitespace=True)
base = alt.Chart(babyData).transform_filter(
'datum.smoke != 9'
)
hist = base.mark_bar(opacity=0.5).encode(
alt.X("bwt:Q",title='Birth Weight (Ounces)', bin=True),
alt.Y('count()', title='Count'),
color='smoke:N'
).properties(
width=400,
height=400
)
mean = base.mark_rule().encode(
x='mean(bwt):Q',
size=alt.value(4),
color='smoke:N'
)
hist + mean
</code></pre>
<p><a href="https://i.stack.imgur.com/O82Hc.png" rel="nofollow noreferrer"><img src="https://i.stack.imgur.com/O82Hc.png" alt="enter image description here"/></a></p>
<p>从那里,您可以使用标准方法来处理每个标记使用的<a href="https://altair-viz.github.io/user_guide/customization.html" rel="nofollow noreferrer">Customize the color schemes</a></p>