将ggplot对象保存到文件时,有什么方法可以防止plotnine打印用户警告?

时间:2019-04-23 06:25:16

标签: python ggplot2 plotnine

我正在用python构建一个仿真工具,该工具使用plotnine输出许多绘图。但是,对于我保存的每个地块,都会收到以下错误消息:

C:\Users\tarca\Anaconda3\lib\site-packages\plotnine\ggplot.py:706: UserWarning: Saving 10 x 3 in image.
  from_inches(height, units), units))

C:\Users\tarca\Anaconda3\lib\site-packages\plotnine\ggplot.py:707: UserWarning: Filename: my_plot.png
  warn('Filename: {}'.format(filename))

我已经尝试过手动设置所有参数,并且已经尝试使用plot.save()和ggsave()来保存文件-两者都产生相同的结果。如果您搜索错误,则出现的唯一问题是以下教程的作者遇到了相同的错误,尽管未在其中予以解决:

https://monashdatafluency.github.io/python-workshop-base/modules/plotting_with_ggplot/

要保存图表,我使用的代码类似于:

plot.save(filename = 'my_plot.png', width = 10, height = 3, dpi = 300)

我希望能够保存图表,而不会产生任何使使用该程序的人感到困惑的烦人消息。

2 个答案:

答案 0 :(得分:1)

是的,只需使用:

    a={"44":[
    {
       "16":{
          "unitData":[

          ],
          "unitHeader":{
             "t9u":"P3P34",
             "sum":"807",
          }
       }
    },
    {
       "16":{
          "unitData":[

          ],
          "unitHeader":{
             "t9u":"BFB",
             "sum":"8A",
          }
       }
        }
 ],
 "49":[
    {
       "16":{
          "unitData":[

          ],
          "unitHeader":{
             "t9u":"P3P34",
             "sum":"807",
          }
       }
    },
    {
       "17":{
          "unitData":[

          ],
          "unitHeader":{
             "t9u":"BFB",
             "sum":"8A",
          }
       }
    }
 ],
 "7":[
    {
       "16":{
          "unitData":[

          ],
          "unitHeader":{
             "t9u":"P3P34",
             "sum":"807",
          }
       }
    },
    {
       "6":{
          "unitData":[

          ],
          "unitHeader":{
             "t9u":"BFB",
             "sum":"0A",
          }
       }
    }
 ],
}

given_array = ['44', '49']
    for i in list(a.keys()):
        if i not in given_array:
            a.pop(i)
print(a)

如果您未指定fig2.save(fig_dir + "/figure2.png", width = w, height = h, verbose = False) ,则“ platenine”将始终显示警告。为何要查看其GitHub模块。

答案 1 :(得分:0)

我不确定为什么此警告仍会显示在您链接的教程中,因为一旦我这样做

import warnings
warnings.filterwarnings('ignore')

也如开头所述,成功地抑制了将图保存到磁盘时打印的UserWarning。