
在使用 spyder ide 和 lets-plot 库进行数据可视化时,有时会遇到图形对象仅在 ipython 控制台中显示
解决方案:使用 show() 方法
解决此问题的关键在于使用 show() 方法。 show() 方法是 Lets-Plot 库提供的用于显示图形的函数。 通过将图形对象赋值给一个变量,然后调用该变量的 show() 方法,可以强制图形在 IDE 中渲染。
以下是修改后的代码示例:
import numpy as np
import polars as pl
from lets_plot import *
LetsPlot.setup_html()
np.random.seed(12)
data = pl.DataFrame(
{
"cond":np.random.lognormal(0, 1, 400),
"rating":np.concatenate((np.random.normal(0, 1, 200), np.random.normal(1, 1.5, 200)))
}
)
p = ggplot(data, aes(x='rating', y='cond')) + \
geom_point(color='dark_green', alpha=.7)
p.show()代码解释:
- p = ggplot(...) + geom_point(...): 这行代码创建了一个 Lets-Plot 图形对象,并将其赋值给变量 p。
- p.show(): 这行代码调用了 p 对象的 show() 方法,指示 Lets-Plot 渲染并显示该图形。
注意事项:
- 确保已经正确安装了 Lets-Plot 库。可以使用 pip install lets-plot 命令进行安装。
- LetsPlot.setup_html() 通常用于配置 Lets-Plot 在 HTML 环境中显示图形,但对于 Spyder IDE,它可能不是必需的。不过,为了确保兼容性,建议保留此行代码。
- 如果仍然无法显示图形,请检查 Spyder IDE 的设置,确保图形显示功能已启用。
总结:
通过将 Lets-Plot 图形对象赋值给一个变量,并调用该变量的 show() 方法,可以轻松解决在 Spyder IDE 中无法显示图形的问题。 这种方法简单有效,能够帮助用户更好地利用 Lets-Plot 进行数据可视化。 记住在创建图形对象后,始终使用 show() 方法来确保图形正确显示。










