python如何将绘制的图片保存为矢量图格式(svg)
作者:简朴-ocean
这篇文章主要介绍了python如何将绘制的图片保存为矢量图格式(svg)问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
将绘制好的的图片保存输入文件夹
import numpy as np import matplotlib.pyplot as plt path='H:'#图片输出路径 fig=plt.figure()#创建画板 ax=fig.add_subplot() x1 = np.linspace(0, 10, 50) y1 =(x1*x1) ax.plot(x1,y1,label='y=x$^2$') ax.legend()#添加图例 fig.savefig(path+'输出图片.svg',format='svg',dpi=150)#输出
其中,format表示输出图片的类型,可以为tiff、jpg、png等格式,按需选择;dpi为像素大小,dpi越大,图片越清晰,占用内存也越大。
tips:svg是矢量图格式,在插入word中裁剪放大缩小的时候清晰度基本不会改变,且色彩不失真。
输出后在你定义的路径下即可找到
python将图片转为矢量图
import numpy as np import matplotlib.pyplot as plt import cv2 fig, ax = plt.subplots() plt.figure(1) image=cv2.imread("2.jpg") # you can specify the marker size two ways directly: # 这样一个一个像素太慢了故而要将同样颜色的坐标进行分类处理 color_class=[] x_y=dict() for x,w in enumerate(image): for y,colors in enumerate(w): if colors.tolist() not in color_class: s=image[:, :, :1] == colors[0] s1=image[:, :, 1:2] == colors[1] s2=image[:, :, 2:3] == colors[2] ss=s*s1*s2 color_class.append(colors.tolist()) x_y[len(color_class)]=np.where(ss.reshape((ss.shape[0],ss.shape[1]))) print(x,y) for i ,colors in enumerate(color_class): a, b = x_y[i + 1] plt.plot(a,b, ".",color=[colors[2]/255,colors[1]/255,colors[0]/255], markersize=1, label='a') # blue circle with size 20 fig.savefig('scatter.svg', dpi=200, format='svg') if __name__ == '__main__': pass
总结
以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。