我已经将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.
答案 0 :(得分:4)
找不到图表的原因是因为它们保存在当前工作目录中。如果您没有更改任何内容,那将是Python的默认目录。调用static func sortAndSeparateWildCards(wildCardRank : Rank, inout cards : [Card], inout nonWildCards : [NonJoker], inout wildCards : [Card]) {
//cards contains the list to be sorted
if cards.isEmpty {return}
nonWildCards.removeAll()
wildCards.removeAll()
for card in cards {
if (card.isWildCard(wildCardRank)!) {wildCards.append(card)}
else {nonWildCards.append(card as! NonJoker)}
}
cards = nonWildCards.sort(NonJoker.cardComparatorRankFirstDesc)
cards += wildCards
}
获取当前目录,然后转到图表。或者,您可以通过在调用os.getcwd()
时定义路径将所有内容保存到预定位置。
ggsave
我还要注意,对于ggsave(plot = p, filename = file_name, path = "C:\Documents\Graphs")
的命名方法,User3926962已经关闭,但如果您使用首先列出的绘图值定义参数,那么您还需要指定p是情节。你需要这样做的原因是因为ggsave
在调用绘图之前调用了文件名,所以如果你运行:
ggsave
你会收到错误:
TypeError:ggsave()为参数'filename'
获取了多个值
要解决此问题,只需定义您的情节:
ggsave(p, filename = file_name)
<强>来源:强>
ggsave(plot = p, filename = file_name)
答案 1 :(得分:0)
以下满意保存文件名
ggsave(p,file_name)