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

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

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绘制并保存指定大小图像的方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持我们。

(0)

相关推荐

  • Python图像处理之简单画板实现方法示例

    本文实例讲述了Python图像处理之简单画板实现方法.分享给大家供大家参考,具体如下: Python图像处理也是依赖opencv的Python接口实现的,Python语言简单易懂,简洁明了.本次实现画板涂鸦,一个是在里面画矩形,还有画线.其他也都可以扩展,本案例只做例程,思路是对鼠标事件的处理,以及滚动条调节颜色处理.鼠标事件就包含有左键按下,以及释放事件的处理. import cv2 import numpy as np # null function def nothing(x): pass

  • python随机在一张图像上截取任意大小图片的方法

    如下所示: ''' 机器学习中随机产生负样本的 ''' import cv2 import random #读取图片 img=cv2.imread('1.png') #h.w为想要截取的图片大小 h=80 w=80 count=1 while 1:     #随机产生x,y 此为像素内范围产生  y = random.randint(1, 890) x = random.randint(1, 1480) #随机截图  cropImg = img[(y):(y + h), (x):(x + w)]

  • python绘制多个子图的实例

    绘制八个子图 import matplotlib.pyplot as plt fig = plt.figure() shape=['.','o','v','>','<','8','s','*'] for j in range(8): x=[i for i in range(6)] y=[i**2 for i in range(6)] ax = fig.add_subplot(241+j) ax.scatter(x,y,c='r',marker=shape[j]) ax.set_title('第

  • python 实现在一张图中绘制一个小的子图方法

    有时候为了直观展现图的信息,可以在大图中添加小子图的方式进行数据分析,如下图所示: 具体的代码如下:该图连接了数据库,当然重要的不是数据展示,而是添加子图的方法. import matplotlib.pyplot as plt import MySQLdb as mdb import numpy as np from mpl_toolkits.axes_grid1.inset_locator import inset_axes from mpl_toolkits.axes_grid1.inset

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

    绘制直线,三角形,正方形 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()

  • Python小工具之消耗系统指定大小内存的方法

    工作中需要根据某个应用程序具体吃了多少内存来决定执行某些操作,所以需要写个小工具来模拟应用程序使用内存情况,下面是我写的一个Python脚本的实现. #!/usr/bin/python # -*- coding: utf-8 -*- import sys import re import time def print_help(): print 'Usage: ' print ' python mem.py 100MB' print ' python mem.py 1GB' if __name_

  • python批量修改图片尺寸,并保存指定路径的实现方法

    如下所示: import os from PIL import Image filename = os.listdir("D:\\Work\\process\\样本处理\\polyu-all-train") base_dir = "D:\\Work\\process\\样本处理\\polyu-all-train\\" new_dir = "D:\\Work\\process\\样本处理\\polyu\\" size_m = 128 size_n

  • Python比较2个时间大小的实现方法

    Python中有time和datetime,不过二者都直接取出日期和时间. 当需要比较2个时间的先后时,这两个类的函数都显得有些过于复杂.因为它们都带上了日期. 如果仅想比较时间,取出当前时间会带有日期信息,而指定比较的目标时间时还要给日期部分赋值.那个time_struct,一大堆的参数.赋值感觉很麻烦哦. 不用什么函数,直接将当前时间格式化成字符串然后转换成整数进行比较. 如下表示当前时间在09:35:10与15:01:01之间. 150101 > int(time.strftime("

  • php查找指定目录下指定大小文件的方法

    本文实例讲述了php查找指定目录下指定大小文件的方法.分享给大家供大家参考.具体实现方法如下: php查找文件大小的原理是遍历目录然后再利用filesize来计算文件大小,然后我们再加一判断就可以了,下面整理了一些例子. 我们先来看遍历目录,代码如下: 复制代码 代码如下: function tree($directory)  {   $mydir = dir($directory);   echo "<ul>n";   while($file = $mydir->r

  • 在python plt图表中文字大小调节的方法

    如下所示: plt.title("Feature importances", fontsize=30) plt.xticks(fontsize=30) plt.yticks(fontsize=30) # 设置坐标标签字体大小 ax.set_xlabel(..., fontsize=30) ax.set_ylabel(..., fontsize=30) # 设置图例字体大小 以上这篇在python plt图表中文字大小调节的方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望

  • matplotlib 输出保存指定尺寸的图片方法

    其实这个问题来源于笔者的横坐标太多了,然后生成的那个figure框框太小,导致坐标重叠,而输出的图片是需要批量保存的,总不能每次都拉长截图吧 所以在plot绘图之前加上了一句 plt.figure(figsize=(10, 5)) 图就变了hhh 然后偶然间有发现了能调节子图也就是subplot性质的一个api蛮有趣的,分享下 plt.subplots_adjust(left=0.09,right=1,wspace=0.25,hspace=0.25,bottom=0.13,top=0.91) 然

  • python实现扫描局域网指定网段ip的方法

    一.问题由来 工作的局域网中,会接入很多设备,机器人上的网络设备就2个了,一个巨哥红外,一个海康可见光.机器人还有自身的ip. 有时候机器人挂的多了,设备维修更换中,搞来搞去就不记得ip是什么,用自带的软件的确能扫出来,但是这就要开两个windows环境下的软件,耗时耗力,折腾.正好在linux,那简单,敲命令. nmap -P 192.168.1.0/24 可以扫描出 192.168.1.0~192.168.1.255的全部ip 但是前提是要装过nmap apt-get install nma

  • python爬虫爬取指定内容的解决方法

    目录 解决办法: 实列代码如下:(以我们学校为例) 爬取一些网站下指定的内容,一般来说可以用xpath来直接从网页上来获取,但是当我们获取的内容不唯一的时候我们无法选择,我们所需要的.所指定的内容. 解决办法: 可以使用for In 语句来判断如果我们所指定的内容在这段语句中我们就把这段内容爬取下来,反之就丢弃 实列代码如下:(以我们学校为例) import urllib.request from lxml import etree def creat_url(page): if(page==1

  • python IDLE 背景以及字体大小的修改方法

    为了保护眼睛,决定把白色背景换掉: 1 首先,在已经下载好的python文件目录下,找到config-highlight.def文件,我的是在H:\python\python3**\Lib\idlelib**文件夹下. 2.打开文件后,你会看到一些默认的颜色配置,比如经典的颜色配置就是白色背景,一般这个文件中会有两种配置可供选择: [IDLE Classic]和 [IDLE New],表现在IDLE界面上就是在python shell下,选择options-configure IDLE--hig

随机推荐