## Re: [Matplotlib-users] How to convert resolution -> (inches, dpi)

 Re: [Matplotlib-users] How to convert resolution -> (inches, dpi) From: John Hunter - 2004-07-21 17:32:09 ```>>>>> "Vineet" == Vineet Jain writes: Vineet> is there a formula which will always convert a image Vineet> resolution (x pixels by y pixles) to inches, dpi I'm Vineet> assuming that there are some contraints to how high and Vineet> low dpi can go. How and what are those contraints. There are no formal constraints. If you set the dpi too high you eill eventually run out of memory. I suppose dpi<1 is undefined :-). Typical screen dpis are 72 and 96. If you want the screen size the be accurate in inches, you need to make the dpi setting correspond to the actual pixels per inch on the monitor. matplotlib does not currently support different horizontal and vertical dpis (many monitors have different resolutions in the horizontal and vertical dimensions). It wouldn't be hard to add, but last time I suggested it on the list noone was interested. Here is an example to set the figure size in inches given pixel dimensions and dpi from __future__import division # do float division pixw, pixh = 640, 680 dpi = 96 winch = pixw/dpi # width in inches is pixel width / dpi hinch = pixh/dpi # height in inches is pixel height / dpi fig = figure(figsize=(winch, hinch), dpi=dpi) This is what backend_gtk does after a figure resize - I have to conver the pixel dimensions to inches. You can change an existing figure's size, if necessary, with fig.set_figsize_inches(winch, hinch) Hope this helps, JDH ```

 [Matplotlib-users] How to convert resolution -> (inches, dpi) From: Vineet Jain - 2004-07-21 11:02:50 ```is there a formula which will always convert a image resolution (x pixels by y pixles) to inches, dpi I'm assuming that there are some contraints to how high and low dpi can go. How and what are those contraints. This is needed since the charting package, that I'm migrating from, used pixels to detemine the size of the chart. Vineet ```
 Re: [Matplotlib-users] How to convert resolution -> (inches, dpi) From: John Hunter - 2004-07-21 17:32:09 ```>>>>> "Vineet" == Vineet Jain writes: Vineet> is there a formula which will always convert a image Vineet> resolution (x pixels by y pixles) to inches, dpi I'm Vineet> assuming that there are some contraints to how high and Vineet> low dpi can go. How and what are those contraints. There are no formal constraints. If you set the dpi too high you eill eventually run out of memory. I suppose dpi<1 is undefined :-). Typical screen dpis are 72 and 96. If you want the screen size the be accurate in inches, you need to make the dpi setting correspond to the actual pixels per inch on the monitor. matplotlib does not currently support different horizontal and vertical dpis (many monitors have different resolutions in the horizontal and vertical dimensions). It wouldn't be hard to add, but last time I suggested it on the list noone was interested. Here is an example to set the figure size in inches given pixel dimensions and dpi from __future__import division # do float division pixw, pixh = 640, 680 dpi = 96 winch = pixw/dpi # width in inches is pixel width / dpi hinch = pixh/dpi # height in inches is pixel height / dpi fig = figure(figsize=(winch, hinch), dpi=dpi) This is what backend_gtk does after a figure resize - I have to conver the pixel dimensions to inches. You can change an existing figure's size, if necessary, with fig.set_figsize_inches(winch, hinch) Hope this helps, JDH ```