1. 准备一张照片,编写Python程序将该照片进行图像处理,分别输出以下效果的图片:(a)灰度图;(b)轮廓图;

(c)变换RGB通道图;(d)旋转45度图。

2. 假设当前文件夹中data.csv文件中存放了2020年某饭店营业额,第一列为日期(如2020-02-03),第二列为每天交易额(如3560),文件中第一行为表头,其余行为实

际数据。编写程序,完成下面的任务,要求对结果图形进行适当的美化:

(1)使用pandas读取文件data.csv中的数据,创建DataFrame对象,并删除其中所有的缺失值;

(2)绘制第1个月的营业额折线图,反映饭店每天的营业额情况,并把图形保存为本地文件day.jpg;

(3)按月份进行统计,绘制柱状图显示每个月份的营业额,并把图形保存为本地文件month.jpg;

(4)按季度统计该饭店2020年的营业额数据,绘制饼状图显示4个季度的营业额分布情况,并把图形保存为本地文件quarter.jpg。

 1. 准备一张照片编写Python程序将该照片进行图像处理,分别输出以下效果的图片:(a)灰度图;(b)轮廓图;
# c)变换RGB通道图;(d)旋转45度图。

from PIL import Image
from PIL import ImageFilter
im = Image.open('1.jpg')
gray = im.convert('L')
rpg = im.convert("RGB")
xz = im.rotate(45)
om = im.filter(ImageFilter.CONTOUR)
gray.save('a.jpg')
om.save('b.jpg')
rpg.save('c.jpg')
xz.save('d.jpg')


# 2. 假设当前文件夹中data.csv文件中存放了2020年某饭店营业额,第一列为日期(如2020-02-03),第二列为每天交易额(如3560),文件中第一行为表头,其余行为实
# 际数据。编写程序,完成下面的任务,要求对结果图形进行适当的美化:
#
1)使用pandas读取文件data.csv中的数据,创建DataFrame对象,并删除其中所有的缺失值;
#
2)绘制第1个月的营业额折线图,反映饭店每天的营业额情况,并把图形保存为本地文件day.jpg
# 3)按月份进行统计,绘制柱状图显示每个月份的营业额,并把图形保存为本地文件month.jpg;
#
4)按季度统计该饭店2020年的营业额数据,绘制饼状图显示4个季度的营业额分布情况,并把图形保存为本地文件quarter.jpg

import matplotlib
import pandas
import matplotlib.pyplot as plt matplotlib.rcParams['font.sans-serif'] = ['SimHei'] # pyplot中文显示
df = pandas.read_csv("data.csv", engine='python')
df['日期'] = pandas.to_datetime(df['日期'])
df[['交易额']] = df[['交易额']].astype(float) # 将交易额转换为float类型
df = df.dropna() # 去除缺失行 plt.figure()
df1 = df.head(31) # 取第一个月
df1.plot(x='日期') # 画图,以日期为x轴
plt.savefig('day.jpg') plt.figure()
df2 = df
df2['月份'] = df2['日期'].map(lambda x: x.month) # 提取出月份
df2 = df2.groupby(by='月份', as_index=False).sum() # as_inside=False不把month作为新的index,分组求和
df2.plot(x='月份', kind='bar', y='交易额')
plt.savefig('month.jpg') plt.figure()
one = df2[:3]['交易额'].sum()
two = df2[3:6]['交易额'].sum()
three = df2[6:9]['交易额'].sum()
four = df2[9:12]['交易额'].sum()
plt.pie([one, two, three, four], labels=['第一季度', '第二季度', '第三季度', '第四季度'])
plt.savefig('quarter.jpg')

实验:Python图形图像处理的更多相关文章

  1. Python图形图像处理库的介绍之Image模块

    http://onlypython.group.iteye.com/group/wiki/1372-python-graphics-image-processing-library-introduce ...

  2. python图形图像处理--验证码的制作

    from PIL import Image,ImageDraw,ImageFontimport randomfrom io import BytesIO class code(): def __ini ...

  3. python PIL 图像处理

    python PIL 图像处理 This blog is from: https://www.jianshu.com/p/e8d058767dfa Image读出来的是PIL的类型,而skimage. ...

  4. HTML5图形图像处理技术研究

    摘要:图形图像处理平台大部分是传统的C/S架构的桌面应用程序,维护困难,共享性差,而B/S架构的Web程序具有易维护.易共享的优点.本文研究了基于HTML5的Web图形图像处理技术,用HTML5实现了 ...

  5. python数字图像处理(17):边缘与轮廓

    在前面的python数字图像处理(10):图像简单滤波 中,我们已经讲解了很多算子用来检测边缘,其中用得最多的canny算子边缘检测. 本篇我们讲解一些其它方法来检测轮廓. 1.查找轮廓(find_c ...

  6. C&C++图形图像处理开源库

    Google三维APIO3D O3D 是一个开源的 WebAPI 用来在浏览器上创建界面丰富的交互式的 3D 应用程序.这是一种基于网页的可控3D标准.此格式期望真正的基于浏览器,独立于操作系统之外, ...

  7. 用Python做图像处理

    转自:http://blog.csdn.net/gzlaiyonghao/article/details/1852726  最近在做一件比较 evil 的事情——验证码识别,以此来学习一些新的技能.因 ...

  8. python skimage图像处理(一)

    python skimage图像处理(一) This blog is from: https://www.jianshu.com/p/f2e88197e81d 基于python脚本语言开发的数字图片处 ...

  9. python skimage图像处理(二)

    python skimage图像处理(二) This blog is from: https://www.jianshu.com/p/66e6261f0279  图像简单滤波 对图像进行滤波,可以有两 ...

随机推荐

  1. Java 线程数过多会造成什么异常?

    1.线程的生命周期开销非常高 2.消耗过多的 CPU 资源 如果可运行的线程数量多于可用处理器的数量,那么有线程将会被闲置.大量空 闲的线程会占用许多内存,给垃圾回收器带来压力,而且大量的线程在竞争  ...

  2. 学习GlusterFS(四)

    基于 GlusterFS 实现 Docker 集群的分布式存储 以 Docker 为代表的容器技术在云计算领域正扮演着越来越重要的角色,甚至一度被认为是虚拟化技术的替代品.企业级的容器应用常常需要将重 ...

  3. 记录md的偏好设置

  4. DASCTF Oct吉林工师web

    迷路的魔法少女 进入环境给出源码 <?php highlight_file('index.php'); extract($_GET); error_reporting(0); function ...

  5. C++ | 程序编译连接原理

    文章目录 预编译(生成*.i文件) 编译(生成*.s文件) 汇编(生成*.o文件,也叫目标文件) 链接(生成*.exe文件,也叫可执行文件) 汇编--目标文件 查看文件头 查看符号表 查看 .o 文件 ...

  6. DIANA算法

    DIANA算法 DIANA算法示例 DIANA算法练习

  7. Numpy实现多项式曲线拟合

    Numpy实现多项式曲线拟合 这里可以对比matlab中的拟合方式看看matlab拟合函数的三种方法,和第一种方式很像 问题定义:对于一堆数据点(x, y),能否只根据这些数据,找出一个函数,使得函数 ...

  8. C++中初始化列表的使用(总结)

    原文链接 https://www.cnblogs.com/dishengAndziyu/p/10906081.html 参考链接:https://www.cnblogs.com/laiqun/p/57 ...

  9. 微信小程序加密数据(encryptedData)解密中的PHP代码,php7.1报错

    问题描述 最近在开发微信小程序涉及到加密数据(encryptedData)的解密,用的是PHP代码,在运行后报错mcrypt_module_ xxx is deprecated,提示方法已过时了 经研 ...

  10. 微信小程序自定义tab,多层tab嵌套实现

    小程序最近是越来越火了-- 做小程序有一段时间了,总结一下项目中遇到的问题及解决办法吧. 项目中有个多 tab 嵌套的需求,进入程序主界面下面有两个 tab,进入A模块后,A模块最底下又有多个tab, ...