Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/326.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
python的ggplot中的ggsave()未保存_Python_Ggplot2 - Fatal编程技术网

python的ggplot中的ggsave()未保存

python的ggplot中的ggsave()未保存,python,ggplot2,Python,Ggplot2,我已经将ggplot导入到python中,正在运行以下脚本,希望ggsave()能够将我的绘图保存到某个地方,但是它似乎并没有将任何内容写入.png文件以供以后使用。当我在解释器中将其作为p返回时,将返回绘图,但我必须手动保存它 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))) + g

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

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)
这是解释器中的输出。。。但没有文件保存到任何目录

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.

下面的示例保存文件名

ggsave(p,file_name)

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

ggsave(plot = p, filename = file_name, path = "C:\Documents\Graphs")

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

ggsave(p, filename = file_name)
您将得到以下错误:

TypeError:ggsave()为参数“filename”获取了多个值

要解决此问题,只需定义绘图:

ggsave(plot = p, filename = file_name)
来源:

ggsave(filename = None, plot = None, device = None, format = None,
               path = None, scale = 1, width = None, height = None, units = "in",
               dpi = 300, limitsize=True, **kwargs)

断开的链接。看起来pythonIt的ggsave已从
ggplot
中删除,它已被
ggplot
类上的
p.save(filename,width=None,height=None,dpi=180)的
save()方法替换。资料来源: