[英]Format Altair choropleth map color scale
我正在嘗試使用等值線 map 上的色標對百分比進行編碼。 如何格式化比例以顯示百分比值(例如 10%)而不是分數值(例如 0.1)? 我知道對於常規的 X 或 Y 軸,您可以執行axis=alt.Axis(format='.0%')
,但我看不到如何使用此色標的格式。
import altair as alt
import pandas as pd
from vega_datasets import data
alt.renderers.enable('notebook')
airports = pd.read_csv(data.airports.url)
airports = airports.groupby('state').agg({'iata': 'count'})
airports['id'] = range(1, len(airports) + 1)
airports['pct'] = airports['iata'] / airports['iata'].sum()
states = alt.topo_feature(data.us_10m.url, feature='states')
alt.Chart(states).mark_geoshape().encode(
color='pct:Q'
).transform_lookup(
lookup='id',
from_=alt.LookupData(airports, 'id', ['pct'])
).project('albersUsa')
顏色編碼的legend
屬性接受一個控制圖例比例格式的format
參數:
alt.Chart(states).mark_geoshape().encode(
color=alt.Color('pct:Q', legend=alt.Legend(format=".0%"))
).transform_lookup(
lookup='id',
from_=alt.LookupData(airports, 'id', ['pct'])
).project('albersUsa')
alt.Legend 文檔中的更多信息。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.