簡體   English   中英

使用 plotnine 保存高分辨率圖像

[英]Saving high-resolution images with plotnine

我正在嘗試使用 plotnine 來保存高分辨率的 png 圖像。

使用測試數據集,這看起來像:

from plotnine import *
import pandas as pd
import numpy as np

df = pd.DataFrame()
df['x'] = np.arange(0,10,0.01)
df['y'] = np.sin(df['x'])

p = ggplot(df, aes(x='x',y='y')) + labs(x='x', y='y') + geom_point(size=0.1)
p.save(filename = 'test3.png', height=5, width=5, units = 'in', dpi=1000)

這會生成一個包含我的繪圖的低分辨率 .png 文件,當我增加指定的 dpi 時,它不會得到改善。

我也嘗試過保存:

ggsave(plot=p, filename='test.png', dpi=1000)

並將dpi=1000替換為res=1000 這會產生相同的低分辨率 png 文件。

如何以我想要的分辨率保存我的繪圖?

編輯:此錯誤已在 plotnine 0.3.0 版中解決。 並且上面的代碼可以正常工作。

既然這還沒有回答,我也被引導到這里......

據@ has2k1(筆者plotnine ),這是一個錯誤,現在已經得到解決。 此提交看起來可能是引用的修復。

要解決此問題,請確保您使用的是git版本或至少使用0.3.0版

也有可能保存 matplotlib 圖

import plotnine as pn

fig, plot = (pn.ggplot()
 + ...

 + pn.theme(panel_background=pn.element_blank())
 + pn.theme(axis_title_y=pn.element_blank())
 + pn.theme(axis_ticks_major_y=pn.element_blank())
 + pn.theme(figure_size=(12, 8))
             ).draw(show=False, return_ggplot=True)

fig.savefig('image.png', dpi=300)

這對我來說沒問題。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM