Python数据可视化JupyterNotebook绘图⽣成⾼清图⽚⼤家好,我是⼩五
最近有⼩伙伴问了个问题:如何在jupyter notebook,⽤Matplotlib画图时能够更“⾼清”?
今天正好跟⼤家聊聊,解决办法。
先举个⼩例⼦,⽤Matplotlib绘制极坐标图:
import numpy as np
import pandas as pd
import matplotlib.pyplot as plt
%matplotlib inline
s = pd.Series(np.arange(20))
fig = plt.figure(figsize=(8, 4))
ax = plt.subplot(111, projection='polar')
ax.plot(s, linestyle='--', marker='.', lw=3)
plt.savefig("temp.png")
打开保存到当前⼯作⽬录⾥的temp.png,放⼤之后就会发现确实“像素略渣”
⼀些⼩伙伴可能会说,那我修改图像像素尺⼨不就⾏了。
确实可以,不过要记得同时修改所有的像素尺⼨,⽽不是只改图像⼤⼩,否则就会像下⾯⼀样
我们可以在保存图像时,增加⼀些参数。
⽐如dpi就是分辨率,每英⼨的点数。
s = pd.Series(np.arange(20))
fig = plt.figure(figsize=(8, 4))
ax = plt.subplot(111, projection='polar')
ax.plot(s, linestyle='--', marker='.', lw=3)
svg矢量图下载plt.savefig("temp_1.png", dpi=500, bbox_inches='tight')
另⼀个参数bbox_inches: 只有图形给定部分会被保存。设置为“tight”⽤以恰当的匹配所保存的图形。
这样⽣成的图像就⾜够⾼清了。
想让图像⾼清,还有另外⼀种⽅法。
之前跟⼤家介绍过⼀些,⽐如%matplotlib inline可以在Ipython编译器⾥直接使⽤,功能是可以内嵌绘图,并且可以省略掉plt.show()这⼀步。我们可以再增加⼀⾏配置,就能让 Matplotlib 在 Jupyter Notebook 上⾯输出⾼清⽮量图了。
%config InlineBackend.figure_format = 'svg'
输出的格式是svg,这样浏览器就可以渲染出⽮量图了。
更改保存格式,就得到了⾼清的⽮量图。
第⼆种⽅法使⽤了Jupyter notebook 中的魔法命令,可以设定显⽰图⽚的分辨率。
同样的参数设置还有:
%config InlineBackend.figure_format = "png"
%config InlineBackend.figure_format = "svg"
%config InlineBackend.figure_format = "retina"
在分辨率较⾼的屏幕(例如 Retina 显⽰屏)上,Jupyter Notebook 中的默认图像可能会显得模糊。
可以在 %matplotlib inline 之后使⽤%config InlineBackend.figure_format = "retina"
来呈现分辨率较⾼的图像。
最近有啥书?
R语⾔数据可视化实战:本书全⾯介绍了如何利⽤R语⾔绘制各种统计图形,书中的所有统计图形都给出了实例源代码,读者可以通过代码进⾏复现。适合R语⾔数据可视化⼊门与进阶读者阅读,也适合数据分析和数据挖掘的从业者及其他数据科学从业者阅读。
以上就是Python数据可视化JupyterNotebook绘图⽣成⾼清图⽚的详细内容,更多关于Python数据可视化JupyterNotebook的资料请关注其它相关⽂章!

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。