首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >用于python不保存的ggsave中的ggsave()

用于python不保存的ggsave中的ggsave()
EN

Stack Overflow用户
提问于 2015-12-07 15:29:54
回答 2查看 8.6K关注 0票数 4

我已经将ggsave导入python,并且正在运行下面的脚本,希望ggsave()能够将我的代码保存在某个地方,但是它似乎并没有将任何东西写到.png文件中供以后使用。当我在解释器中将它作为p返回时,就会返回这个图,但我必须手动保存它。

代码语言:javascript
复制
import ggplot

#d as some pandas dataframe

k = [2,3,4,5]

for i in k:
    p = ggplot(d, aes(x='x', y='y', color='cluster'+str(i))) + geom_point(size=75) + ggtitle("Cluster Result: "+str(i))
    file_name = "Clusters_"+str(i)+'.png'  
    #this is not saving to any directory  
    ggsave(p,file=file_name)

这是解释器的输出..。但没有文件保存到任何目录。

代码语言:javascript
复制
Saving 11.0 x 8.0 in image.
Saving 11.0 x 8.0 in image.
Saving 11.0 x 8.0 in image.
Saving 11.0 x 8.0 in image.
Saving 11.0 x 8.0 in image.
Saving 11.0 x 8.0 in image.
EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2016-01-04 21:07:21

无法找到图形的原因是它们保存在当前的工作目录中。如果您没有更改任何内容,那将是Python的默认目录。调用os.getcwd()以获取当前目录,然后到那里查看图表。或者,您可以通过在调用ggsave时定义路径将所有内容保存到预定的位置。

代码语言:javascript
复制
ggsave(plot = p, filename = file_name, path = "C:\Documents\Graphs")

我还想指出,User3926962在命名ggsave的方法方面是接近的,但是如果您用列出的绘图值定义参数,那么还需要指定p是绘图。您需要这样做的原因是因为ggsave在调用绘图之前调用文件名,所以如果您运行:

代码语言:javascript
复制
ggsave(p, filename = file_name)

您将得到错误:

TypeError: ggsave()获得参数“文件名”的多个值

要解决这个问题,只需定义您的情节:

代码语言:javascript
复制
ggsave(plot = p, filename = file_name)

资料来源:

代码语言:javascript
复制
ggsave(filename = None, plot = None, device = None, format = None,
               path = None, scale = 1, width = None, height = None, units = "in",
               dpi = 300, limitsize=True, **kwargs)

链接

票数 5
EN

Stack Overflow用户

发布于 2015-12-07 18:55:20

保存文件名后,如下所示

代码语言:javascript
复制
ggsave(p,file_name)
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/34137251

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档