小编ffi*_*ffi的帖子

如何在 IF 语句中制作 Altair 图?

情况似乎很简单:我正在处理带有多个 Altair 图的 Jupyter Lab 文件,这最终使文件太大而无法运行和保存。由于我不需要每次都看到这些图,我想我可以通过plotAltair = True在脚本开头指定类似的内容然后将每个 Altair 图嵌套在if语句中来避免这种情况。这听起来很简单,但由于某种原因,它似乎不起作用。我错过了一些明显的东西吗?[编辑:原来我是]

例如:

import altair as alt
import os
import pandas as pd
import numpy as np
lengths = np.random.randint(0,100,200)
lengths_list = lengths.tolist()
labels = [str(i) for i in lengths_list]
peak_lengths = pd.DataFrame.from_dict({'coords': labels, 
                                       'lengths': lengths_list},
                                       orient='columns')
Run Code Online (Sandbox Code Playgroud)

什么工作:

alt.Chart(peak_lengths).mark_bar().encode(
    x = alt.X('lengths:Q', bin=True),
    y='count(*):Q'
)
Run Code Online (Sandbox Code Playgroud)

什么不起作用:

plotAltair = True
if plotAltair:
    alt.Chart(peak_lengths).mark_bar().encode(
              x = alt.X('lengths:Q', bin=True),
              y='count(*):Q'
    )
Run Code Online (Sandbox Code Playgroud)

** Obs.:我已经尝试将其alt.data_transformers.enable('json')用作减小文件大小的方法,但它也不起作用,但请不要关注此问题,而是关注更简单的问题。

python-3.x jupyter altair

3
推荐指数
1
解决办法
1309
查看次数

标签 统计

altair ×1

jupyter ×1

python-3.x ×1