2017-02-26 144 views
0

随着熊猫系列(pandas.core.series.Series),有一个方便的plot()方法(documentation)用于产生,例如条形图。Pandas系列图()中figsize的像素密度/ DPI是多少?

这个plot()方法需要一个figsize是元组值;宽度和高度以英寸为单位。

figsize:以英寸的元组(宽度,高度)

然而,我无法找到关于什么假设像素密度的任何文档/ DPI/PPI为每英寸。似乎也没有办法指定它应该是什么。根据输出的图像大小,我猜测它非常低(例如72 dpi),但想知道这是什么,所以当我教这个方法时,我可以为输出提供合理的解释。下面是一个示例用法:

species_counts = surveys.groupby('species_id')['record_id'].count() 
type(species_counts) # `pandas.core.series.Series` 
species_counts.plot(figsize = (9, 6), kind = 'bar') 

我的理解是基于matplotlib这种方法,但不幸的是,在熊猫系列的方法并不需要一个dpi参数(在AttributeError: Unknown property dpi结果)。

回答

1

您可以使用基础matplotlib命令来指定dpi

import matplotlib.pyplot as plt 
import pandas as pd 
%matplotlib inline 

fig = plt.figure(dpi=1000) 
species_counts = surveys.groupby('species_id')['record_id'].count() 
species_counts.plot(figsize = (9, 6), kind = 'bar') 

fig.get_dpi() # 1000 

或者,如果你只是想知道什么是默认dpi是:

import matplotlib.pyplot as plt 
import pandas as pd 
%matplotlib inline 

species_counts = surveys.groupby('species_id')['record_id'].count() 
species_counts.plot(figsize = (9, 6), kind = 'bar') 

fig = plt.gcf()  
fig.get_dpi() 

我不认为有一个规范的答案,我敢肯定的确切答案将取决于什么你正在使用的后端,也可能在你的硬件上。