IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> Python知识库 -> Python基础——csv文件处理及可视化 -> 正文阅读

[Python知识库]Python基础——csv文件处理及可视化

csv文件处理及可视化

(1)csv文件格式:要在文本文件中存储数据,最简单的方式是将数据作为一系列以逗号( , )分隔的值写入文件【形式:数据之间用,号隔开
#例如:2014-1-5,61,44,26,18,7,-1,56,30,9,30.34,30.27,30.15,10,4,0.00,0,195
(2)分析csv文件头
#csv处理模块包含在Python标准库中,可以分析csv文件的数据行,可以快速提取感兴趣的值。

def read_csv2():
    filename = 'D:\python_test1\chapter_16_sitka_weather_07-2014.csv'  # 文件所在路径
    with open(filename) as f:#打开文件,并创建文件对象
    	#将文件对象作为参数传给csv.reader(),并创建一个与该文件相关联的阅读器实例,阅读器对象存储在reader中
    	#reader处理文件中以逗号分隔的第一行数据,并将每项数据都作为一个元素存储在列表中
    	#此时光标位于-1的位置
        reader = csv.reader(f)
        #模块csv包含函数next(),调用它并将阅读器对象传递给它时,它将返回文件中的下一行。
        #从-1行开始,每调用一次,获取下一行。
        header_row = next(reader)

    #enumerate()获取每个元素的索引及其值
    for index, column_header in enumerate(header_row):
        print(index, column_header)

(3)可视化实例:绘制整年的天气图

def get_allyear():
 	filename="D:\python_test1\chapter_16_sitka_weather_2014.csv"
    with open(filename) as f:#打开文件
        #创建一个csv文件阅读器对象,当前文件的光标位于-1处
        reader=csv.reader(f)
        #光标移动到第1行
        next(reader)
        #新建存储信息的列表
        highs,dates,lows=[]#最高温度、日期、最低温度
    
        #在数据集中获取需要的数据,并存入相应的数据集
        #由于csv文件存储的都是文本字符型数据,因此取出来的也是文本型数据,若需进行数据处理,应将其转为数值型数据 int()进行强制类型转换
        for row in reader:
            #存放最高温度
            highs.append(int(row[1]))
            #存放日期
            date=datetime.strptime(row[0],"%Y-%m-%d")
            dates.append(date)
            #存放最低温度
            lows.append(int(row[3]))

        #绘制图形
        #设置图像大小
        fig=plt.figure(dpi=128,figsize=(10,6))
        #画图  两个plot绘制在一张图上
        plt.plot(dates,highs,c="red",alpha=0.5)
        plt.plot(dates,lows,c="blue",alpha=0.5)
        # alpha 设置不透明度  Alpha值为0表示完全透明,1(默认设置)表示完全不透明  通过设置alpha值可设置线条的透明度
        #fill_between()设置填充区域,实参facecolor指定了填充区域的颜色  dates表明x轴范围, highs, lows  表示两个y轴范围,由x范围和y轴范围共建的区域为填充的区域
        #作用:让填充区域将两个数据系列连接起来的同时不分散观察者的注意力。
        plt.fill_between(dates, highs, lows, facecolor='green', alpha=0.1)
        #设置相应的标签
        plt.title("Daily high and low temperatures - 2014", fontsize=24)
        plt.xlabel("",fontsize=16)
        fig.autofmt_xdate()  # 绘制斜的日期标签,以免它们彼此重叠
        plt.ylabel("Temperature (F)", fontsize=16)
        # 设置刻度标记的大小
        plt.tick_params(axis='both', which='major', labelsize=16)
        plt.show()

    #若存在缺失值
    #则采用try:...except  异常:... else:的格式进行异常捕捉

【重难点&新知识】:
(1)设置图像大小(自定义图像实例)

fig=plt.figure(dpi=128,figsize=(10,6))

语法:

figure(num=None, figsize=None, dpi=None, facecolor=None,edgecolor=None, frameon=True)

参数解析:

num:图像编号或名称,数字为编号 ,字符串为名称
figsize:指定figure的宽和高,单位为英寸;
dpi参数:指定绘图对象的分辨率,即每英寸多少个像素,缺省值为80
facecolor:背景颜色
edgecolor:边框颜色
frameon:是否显示边框

补充:

fig.autofmt_xdate()#绘制斜的日期标签,以免它们彼此重叠

(2)在同一个折线中绘制两条图线
语法逻辑:为同一个plt实例添加数据,调用多次plot函数,就可以在同一张图中绘制多条折线。

#画图 两个plot绘制在一张图上
plt.plot(dates,highs,c=“red”,alpha=0.5)
plt.plot(dates,lows,c=“blue”,alpha=0.5)
#dates x轴 highs/lows y轴 alpha=0.5设置不透明度

(3) 设置图像填充区域
fill_between()设置填充区域

plt.fill_between(dates, highs, lows, facecolor=‘green’, alpha=0.1)

参数解析:

#实参facecolor指定了填充区域的颜色 dates表明x轴范围, highs, lows 表示两个y轴范围,由x范围和y轴范围共建的区域为填充的区域
#作用:让填充区域将两个数据系列连接起来的同时不分散观察者的注意力。

【结果分析】:
在这里插入图片描述

  Python知识库 最新文章
Python中String模块
【Python】 14-CVS文件操作
python的panda库读写文件
使用Nordic的nrf52840实现蓝牙DFU过程
【Python学习记录】numpy数组用法整理
Python学习笔记
python字符串和列表
python如何从txt文件中解析出有效的数据
Python编程从入门到实践自学/3.1-3.2
python变量
上一篇文章      下一篇文章      查看所有文章
加:2021-07-28 07:42:06  更:2021-07-28 07:42:51 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/22 23:35:08-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码