PyCharm 不绘制图形?



我一直在尝试用plotnine绘制,据我所知,它是Python中最像ggplot2风格的库,而且我很难在Python脚本的PyCharm中完成它。这似乎是一个问题,对于 matplotlib 和其他也遇到此错误的绘图库有很多解决方案,但使用它们的答案(向环境变量添加DISPLAY=True,在绘图末尾添加show()等)不适用于 plotnine。

我正在尝试绘制以下内容,该窗口在常规 ipython 窗口(我通过终端访问)中工作:

from plotnine import *
from plotnine.data import *
(ggplot(diamonds)
+ stat_summary(aes('clarity', 'price', fill='cut'), geom='col', position='dodge')
+ stat_summary(aes('clarity', 'price', color='cut'), geom='linerange', size=1, position=position_dodge(width=0.9))
+ scale_color_hue(l=.3)
+ theme(figure_size=(11, 8))
)

我在这里错过了什么,或者我不应该尝试从脚本中绘图,这通常对其他一切都很方便?

PS 解决方法:这似乎是 PyCharm 中的一个错误,社区可能还没有注意到,但这有点公平,因为 plotnine 库也有点新。我的解决方法是避免尝试在脚本中执行此操作,而是从 PyCharm 中的 ipython 控制台中绘制,这有效。

你必须打印 ggplot 对象。

p = (ggplot(diamonds)
+ stat_summary(aes('clarity', 'price', fill='cut'), geom='col', position='dodge')
+ stat_summary(aes('clarity', 'price', color='cut'), geom='linerange', size=1, position=position_dodge(width=0.9))
+ scale_color_hue(l=.3)
+ theme(figure_size=(11, 8))
)
print(p)

IPython会自动为您打印单元格中的最后一个结果。对于其他环境,您必须明确执行此操作

相关内容

  • 没有找到相关文章

最新更新