Python绘制并保存指定大小图像的方法


Posted in Python onJanuary 10, 2019

绘制直线,三角形,正方形

import matplotlib.pyplot as plt
def plotLine():
 x = [1,2,3,4,5]
 y = [3,3,3,3,3]
 plt.figure(figsize=(100,100),dpi=1)
 plt.plot(x,y,linewidth=150)
 plt.axis('off')
 plt.savefig('C:\\Users\\Administrator\\Desktop\\分形图\\a.jpg',dpi=1)
 plt.show()
 plt.close()
def plotTriangle():
 x = [1,3,1,1]
 y = [1,1,3,1]
 plt.figure(figsize=(100,100),dpi=1)
 plt.plot(x,y,linewidth=150)
 plt.axis('off')
 plt.savefig('C:\\Users\\Administrator\\Desktop\\分形图\\b.jpg',dpi=1)
 plt.show()
 plt.close()
def plotSquare():
 x = [1,3,3,1,1]
 y = [1,1,3,3,1]
 plt.figure(figsize=(100,100),dpi=1)
 plt.plot(x,y,linewidth=150)
 plt.axis('off')
 plt.savefig('C:\\Users\\Administrator\\Desktop\\分形图\\c.jpg',dpi=1)
 plt.show()
 plt.close()
plotLine()
plotTriangle()
plotSquare()
from datetime import datetime 
import os 
import matplotlib.pyplot as plt 
import numpy as np 
import tensorflow as tf 
from six.moves import xrange 
data = np.load('data/final37.npy') 
data_images = data
data_images = data_images.reshape(-1,3,61)
# data_images = data_images[500:1000,:,:]
for i in range(2000):
 plt.figure(figsize=(100,100),dpi=1)
 plt.plot(data_images[i][0][0:30],data_images[i][0][30:60],color='blue',linewidth=150)
 plt.plot(data_images[i][1][0:30],data_images[i][1][30:60],color='red',linewidth=150)
 plt.plot(data_images[i][2][0:30],data_images[i][2][30:60],color='green',linewidth=150)
 plt.axis('off')
 plt.savefig('C:\\Users\\Administrator\\Desktop\\调整分辨率\\原始图\\resouce%d.jpg' %(i),dpi=1)
 plt.close()
#################################################################################
# 生成随机分叉图
# import random
# import numpy as np
# import operator
# import os
# import copy
# from matplotlib.font_manager import FontProperties
# from scipy.interpolate import lagrange
# import random
# import matplotlib.pyplot as plt
# np.set_printoptions(threshold=np.inf) #输出全部矩阵不带省略号
# # random.seed(10)
# finaldata = []
# for iy in range(100):
#  #固定一个点,尽量使点固定在0-1正方形的中间 #小数点后16位
#  pointx = random.uniform(0.3,0.7)
#  pointy = random.uniform(0.3,0.7)
# #################################################
#  #主分支在上方
#  a1x = random.uniform(pointx,0.8)#使第二个点尽量不那么大
#  a2x = random.uniform(a1x,1)
#  a3x = random.uniform(a2x,1)
#  a1y = random.uniform(pointy,0.8)
#  a2y = random.uniform(a1y,1)
#  a3y = random.uniform(a2y,1)
#  ax = [pointx,a1x,a2x,a3x]
#  ay = [pointy,a1y,a2y,a3y]
# #  print(ax)
# #  print(ay)
#  #对主分支a段进行插值
#  #在ax相同索引直接分别插两个点,最后a段长度由4变成10,既得final_ax
# #  print(ay)
#  final_ax = []
#  final_ay = []
#  for i in range(len(ax)-1):
#   #round(data,8)小数点保留8位四舍五入
#   f = lagrange([round(ax[i],8),round(ax[i+1],8)],[round(ay[i],8),round(ay[i+1],8)])
#   insertax = np.linspace(ax[i],ax[i+1],4)#插入2个点,小数点后8位
#   insertay = f(insertax)
#   for axi in insertax:
#    final_ax.append(axi)
#   for ayi in insertay:
#    final_ay.append(ayi)
#  del final_ax[4]
#  del final_ax[7]
#  del final_ay[4]
#  del final_ay[7]
#  #################################################
# #  #左下分支
#  b1x = random.uniform(0.2,pointx)#使第二个点尽量不那么小
#  b2x = random.uniform(0,b1x)
#  b3x = random.uniform(0,b2x)
#  b1y = random.uniform(0.2,pointy)
#  b2y = random.uniform(0,b1y)
#  b3y = random.uniform(0,b2y)
#  bx = [b3x,b2x,b1x,pointx]
#  by = [b3y,b2y,b1y,pointy]
#  #对左下分支b段进行插值
#  final_bx = []
#  final_by = []
#  for i in range(len(bx)-1):
#   f = lagrange([round(bx[i],8),round(bx[i+1],8)],[round(by[i],8),round(by[i+1],8)])
#   insertbx = np.linspace(bx[i],bx[i+1],4)
#   insertby = f(insertbx)
#   for bxi in insertbx:
#    final_bx.append(bxi)
#   for byi in insertby:
#    final_by.append(byi)
#  del final_bx[4]
#  del final_bx[7]
#  del final_by[4]
#  del final_by[7]
#   
#  ##################################################
#  #右下分支
#  c1x = random.uniform(pointx,0.8)#使第二个点尽量不那么大
#  c2x = random.uniform(c1x,1)
#  c3x = random.uniform(c2x,1)
#  c1y = random.uniform(0.2,pointy)
#  c2y = random.uniform(0,c1y)
#  c3y = random.uniform(0,c2y)
#  cx = [pointx,c1x,c2x,c3x]
#  cy = [pointy,c1y,c2y,c3y]
#  #对右下分支段进行插值
#  final_cx = []
#  final_cy = []
#  for i in range(len(cx)-1):
#   f = lagrange([round(cx[i],8),round(cx[i+1],8)],[round(cy[i],8),round(cy[i+1],8)])
#   insertcx = np.linspace(cx[i],cx[i+1],4)
#   insertcy = f(insertcx)
#   for cxi in insertcx:
#    final_cx.append(cxi)
#   for cyi in insertcy:
#    final_cy.append(cyi)
#  del final_cx[4]
#  del final_cx[7]
#  del final_cy[4]
#  del final_cy[7]
# ####################################################
#  x = [final_ax,final_bx,final_cx]#三分叉,上为a,左下b,右下c
#  y = [final_ay,final_by,final_cy]
#  diameter_a = round(random.uniform(0.2,0.25),8)
#  diameter_b = round(random.uniform(0.1,0.2),8)
#  diameter_c = round(random.uniform(0.1,0.2),8)
#  final_a = []#长度为21前10个x坐标点,后面10个是y坐标点,最后一个是管径
#  for ax in final_ax:
#   final_a.append(ax)
#  for ay in final_ay:
#   final_a.append(ay)
#  final_a.append(diameter_a)
#  final_b = []
#  for bx in final_bx:
#   final_b.append(bx)
#  for by in final_by:
#   final_b.append(by)
#  final_b.append(diameter_b)
#  final_c = []
#  for cx in final_cx:
#   final_c.append(cx)
#  for cy in final_cy:
#   final_c.append(cy)
#  final_c.append(diameter_c)
#  finalabc = [final_a,final_b,final_c]
#  finaldata.append(finalabc)
# finaldata = np.array(finaldata)
# #复制改变a,不改变b
# finaldata1 = finaldata.copy()
# finaldata2 = finaldata.copy()
# finaldata3 = finaldata.copy()
# #以定点为中心,进行镜像处理
# finaldata1[:,:,0:10] = 2 * pointx -finaldata[:,:,0:10]
# finaldata2[:,:,10:20] = 2 * pointx -finaldata[:,:,10:20]
# finaldata3[:,:,0:20] = 2 * pointx -finaldata[:,:,0:20]
# final = np.concatenate((finaldata,finaldata1,finaldata2,finaldata3),axis=0)
# np.random.shuffle(final)#随机打乱数据,若没有次句,将连续输出一个方向
# print(final.shape)
# # np.save('C:\\Users\\Administrator\\Desktop\\第9周\\80000.npy',final)
# ###########################################
# # 单个可视化图像
# for i in range(len(final)):
#  abc = final[i]
#  plt.plot(abc[0][0:10],abc[0][10:20],color='blue',linewidth=1.5)
#  plt.plot(abc[1][0:10],abc[1][10:20],color='red',linewidth=1.5)
#  plt.plot(abc[2][0:10],abc[2][10:20],color='green',linewidth=1.5)
#  plt.axis('off')
#  plt.savefig('C:\\Users\\Administrator\\Desktop\\ttt\\原图2\\random%d.jpg' %i,dpi=100)
#  plt.close()
###########################################
# 分块可视化图像
# data = np.load('C:\\Users\\Administrator\\Desktop\\第8周\\10000.npy')
# print(data.shape)
# rows,cols = 5,5
# fig,axs = plt.subplots(rows,cols)
# cnt = 0
# for i in range(rows):
#  for j in range(cols):
#   xy = final[cnt]#第n个分叉图,有三个分支,每个分支21个数
#   for k in range(len(xy)):
#    x = xy[k][0:10]
#    y = xy[k][10:20]
#    if k == 0 :
#     axs[i,j].plot(x,y,color='blue',linewidth=xy[k][20]*15)
#    if k == 1:
#     axs[i,j].plot(x,y,color='red',linewidth=xy[k][20]*15)
#    if k == 2:
#     axs[i,j].plot(x,y,color='green',linewidth=xy[k][20]*15)
#    axs[i,j].axis('off')
#   cnt +=1
# # plt.savefig('C:\\Users\\Administrator\\Desktop\\第9周\\')
# plt.show()

以上这篇Python绘制并保存指定大小图像的方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
python实现代码行数统计示例分享
Feb 10 Python
Python中实现的RC4算法
Feb 14 Python
Python内置函数delattr的具体用法
Nov 23 Python
在Django中输出matplotlib生成的图片方法
May 24 Python
Jupyter中直接显示Matplotlib的图形方法
May 24 Python
用Python3创建httpServer的简单方法
Jun 04 Python
解决python升级引起的pip执行错误的问题
Jun 12 Python
Python之两种模式的生产者消费者模型详解
Oct 26 Python
python变量命名的7条建议
Jul 04 Python
Python OpenCV读取中文路径图像的方法
Jul 02 Python
python实现视频压缩功能
Dec 18 Python
Python爬取用户观影数据并分析用户与电影之间的隐藏信息!
Jun 29 Python
解决Python plt.savefig 保存图片时一片空白的问题
Jan 10 #Python
Python使用pydub库对mp3与wav格式进行互转的方法
Jan 10 #Python
python利用ffmpeg进行录制屏幕的方法
Jan 10 #Python
Python3.6.2调用ffmpeg的方法
Jan 10 #Python
Django组件之cookie与session的使用方法
Jan 10 #Python
通过python的matplotlib包将Tensorflow数据进行可视化的方法
Jan 09 #Python
python pcm音频添加头转成Wav格式文件的方法
Jan 09 #Python
You might like
MayFish PHP的MVC架构的开发框架
2009/08/13 PHP
redis 队列操作的例子(php)
2012/04/12 PHP
PHP中创建和验证哈希的简单方法实探
2015/07/06 PHP
php的laravel框架快速集成微信登录的方法
2016/12/12 PHP
thinkphp5.0自定义验证规则使用方法
2017/11/16 PHP
JQuery+DIV自定义滚动条样式的具体实现
2013/06/25 Javascript
引入JS文件IE6报语法错误或缺少对象问题的解决方法
2014/01/09 Javascript
JavaScript字符串对象toUpperCase方法入门实例(用于把字母转换为大写)
2014/10/17 Javascript
jQuery后代选择器用法实例
2014/12/23 Javascript
js Calender控件使用详解
2015/01/05 Javascript
jQuery Ajax使用实例
2015/04/16 Javascript
jquery Deferred 快速解决异步回调的问题
2016/04/05 Javascript
Jquery获取当前城市的天气信息
2016/08/05 Javascript
详解javascript表单的Ajax提交插件的使用
2016/12/29 Javascript
canvas基础绘制-绚丽倒计时的实例
2017/09/17 Javascript
微信小程序返回多级页面的实现方法
2017/10/27 Javascript
JavaScript中的E-mail 地址格式验证
2018/03/28 Javascript
ES6 Map结构的应用实例分析
2019/06/26 Javascript
layer.open回调获取弹出层参数的实现方法
2019/09/10 Javascript
Python中的MongoDB基本操作:连接、查询实例
2015/02/13 Python
Python多线程编程简单介绍
2015/04/13 Python
python ansible服务及剧本编写
2017/12/29 Python
Django框架视图函数设计示例
2019/07/29 Python
pytorch程序异常后删除占用的显存操作
2020/01/13 Python
python dir函数快速掌握用法技巧
2020/12/09 Python
使用HTML5 Canvas API绘制弧线的教程
2016/03/22 HTML / CSS
夏威夷航空官网:Hawaiian Airlines
2016/09/11 全球购物
纽约服装和生活方式品牌:Saturdays NYC
2017/08/13 全球购物
软件缺陷的分类都有哪些
2014/08/22 面试题
高中毕业生自我鉴定范文
2013/09/26 职场文书
学生档案自我鉴定
2013/10/07 职场文书
幼儿园秋游活动方案
2014/01/21 职场文书
2014年小学图书室工作总结
2014/12/09 职场文书
2016年3月份红领巾广播稿
2015/12/21 职场文书
学生安全责任协议书
2016/03/22 职场文书
2019最新企业员工考勤管理制度(通用版)!
2019/07/02 职场文书