简体   繁体   English

有没有办法在 Altair boxplot 中格式化工具提示值

[英]Is there a way to format tooltip values in Altair boxplot

Is is possible to format the values within a tooltip for a boxplot?是否可以在箱线图的工具提示中格式化值? From this Vega documentation , it appears so, but I can't quite figure out how to do it with Altair for python从this Vega documentation看来是这样,但我不太清楚如何使用Altair for python

from vega_datasets import data

import altair as alt

source = data.population.url

alt.Chart(source).mark_boxplot().encode(
    alt.X("age:O"),
    alt.Y("people:Q"),
    tooltip=[
        alt.Tooltip("people:Q", format=",.2f"),
    ],
)

在此处输入图像描述

I believe you need to provide an aggregation for composite marks like mark_boxplot .我相信您需要为诸如mark_boxplot类的复合标记提供聚合。 This works:这有效:

from vega_datasets import data
import altair as alt

source = data.population.url

alt.Chart(source).mark_boxplot().encode(
    alt.X("age:O"),
    alt.Y("people:Q"),
    tooltip=alt.Tooltip("mean(people):Q", format=",.2f"),)

在此处输入图像描述

There is a way to add multiple columns to the tooltip.有一种方法可以将多列添加到工具提示中。 You can pass in multiple columns in square brackets as a list.您可以将方括号中的多列作为列表传递。

import altair as alt
from vega_datasets import data

stocks = data.stocks()

alt.Chart(stocks).mark_point().transform_window(
    previous_price = 'lag(price)'
).transform_calculate(
    pct_change = '(datum.price - datum.previous_price) / datum.previous_price'
).encode(
    x='date',
    y='price',
    color='symbol',
    tooltip=[ 'price', 'symbol', alt.Tooltip('pct_change:Q', format='.1%')]
)

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM