51学通信论坛2017新版

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 2298|回复: 0
打印 上一主题 下一主题

读取CSV内容并用matplotlib做可视化

[复制链接]

 成长值: 15613

  • TA的每日心情
    开心
    2022-7-17 17:50
  • 2444

    主题

    2544

    帖子

    7万

    积分

    管理员

    Rank: 9Rank: 9Rank: 9

    积分
    74104
    跳转到指定楼层
    楼主
    发表于 2019-6-29 20:17:26 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
    读取CSV内容并用matplotlib做可视化:360行、24列的CSV数据,读取其中的360行,和3列(日期、最高温、最低温),然后可视化输出。
    源码和文件:

    1. import csv
    2. from datetime import datetime

    3. from matplotlib import pyplot as plt

    4. # Get dates, high, and low temperatures from file.
    5. filename = 'death_valley_2014.csv'
    6. with open(filename) as f:
    7.     reader = csv.reader(f)
    8.     header_row = next(reader)

    9.     dates, highs, lows = [], [], []
    10.     for row in reader:
    11.         try:
    12.             current_date = datetime.strptime(row[0], "%Y-%m-%d")
    13.             high = int(row[1])
    14.             low = int(row[3])
    15.         except ValueError:
    16.             print(current_date, 'missing data')
    17.         else:
    18.             dates.append(current_date)
    19.             highs.append(high)
    20.             lows.append(low)

    21. # Plot data.
    22. fig = plt.figure(dpi=128, figsize=(10, 6))
    23. plt.plot(dates, highs, c='red', alpha=0.5)
    24. plt.plot(dates, lows, c='blue', alpha=0.5)
    25. plt.fill_between(dates, highs, lows, facecolor='blue', alpha=0.1)

    26. # Format plot.
    27. title = "Daily high and low temperatures - 2014\nDeath Valley, CA"
    28. plt.title(title, fontsize=20)
    29. plt.xlabel('', fontsize=16)
    30. fig.autofmt_xdate()
    31. plt.ylabel("Temperature (F)", fontsize=16)
    32. plt.tick_params(axis='both', which='major', labelsize=16)

    33. plt.show()
    复制代码
    执行结果:





    本帖子中包含更多资源

    您需要 登录 才可以下载或查看,没有帐号?立即注册

    x
    回复

    使用道具 举报

    您需要登录后才可以回帖 登录 | 立即注册

    本版积分规则

    Archiver|手机版|小黑屋|51学通信技术论坛

    GMT+8, 2025-1-31 15:47 , Processed in 0.068742 second(s), 33 queries .

    Powered by Discuz! X3

    © 2001-2013 Comsenz Inc.

    快速回复 返回顶部 返回列表