python绘制散点图

文章目录

1.实验目的

掌握Python绘图库matplotlib库

2.需求

3. 代码以及资源文件

python 复制代码
import numpy as np
import matplotlib.pyplot as plt
import pandas as pd

# 读取NPZ文件
data = np.load('../Files/国民经济核算季度数据.npz', allow_pickle=True)

# 获取时间和第一到第三产业生成总值当季值数据
plt.rcParams['font.sans-serif'] = ['SimHei']  # 设置为黑体字体


# 获取数组中所有第二列数据 即
# print(data['values'][:, 1])

def getAssignedData(arr):

    newArr = []

    for i in range(len(arr)):
        if 4 * i <= len(arr):
            newArr.append(arr[4 * i])

    return newArr


time = data['values'][:, 1]
gdp1 = data['values'][:, 3].astype(float)
gdp2 = data['values'][:, 4].astype(float)
gdp3 = data['values'][:, 5].astype(float)

# 创建散点图
plt.scatter(time, gdp1, label='第一产业', marker='o', c='r')
plt.scatter(time, gdp2, label='第二产业', marker='D', c='b')
plt.scatter(time, gdp3, label='第三产业', marker='o', c='#FFFF01')

plt.ylabel('生产总值(亿元)')
plt.title('2000-2017年各产业季度生产总值散点图')
plt.xticks(rotation=45, fontsize=4)
# 选择性显示横轴坐标标签
labels = getAssignedData(time)
arr = [' ']
for label in labels:
    arr.append(label)

plt.xticks(range(4, 73, 4), labels=getAssignedData(time))
start = plt.xticks()[0]
print(start)
arr1 = [-1]
start = start.tolist()
for ele in start:
    arr1.append(ele)

print(arr1)
plt.xticks(np.array(arr1),arr)
# 添加图例 左上角小图
plt.legend(loc='upper left')

# 保存散点图图片
plt.savefig('散点图.png')

# 创建DataFrame并保存为Excel文件
df = pd.DataFrame({'时间': time, '第一产业': gdp1, '第二产业': gdp2, '第三产业': gdp3})

# 显示散点图
plt.show()

资源文件下载地址):

链接:https://pan.baidu.com/s/1_h-q5sBbMqtRohL7qW0jzw?pwd=r02f

提取码:r02f

--来自百度网盘超级会员V5的分享

4.实验结果

相关推荐
冷雨夜中漫步3 小时前
Python快速入门(6)——for/if/while语句
开发语言·经验分享·笔记·python
郝学胜-神的一滴3 小时前
深入解析Python字典的继承关系:从abc模块看设计之美
网络·数据结构·python·程序人生
百锦再3 小时前
Reactive编程入门:Project Reactor 深度指南
前端·javascript·python·react.js·django·前端框架·reactjs
喵手5 小时前
Python爬虫实战:旅游数据采集实战 - 携程&去哪儿酒店机票价格监控完整方案(附CSV导出 + SQLite持久化存储)!
爬虫·python·爬虫实战·零基础python爬虫教学·采集结果csv导出·旅游数据采集·携程/去哪儿酒店机票价格监控
2501_944934735 小时前
高职大数据技术专业,CDA和Python认证优先考哪个?
大数据·开发语言·python
helloworldandy5 小时前
使用Pandas进行数据分析:从数据清洗到可视化
jvm·数据库·python
肖永威6 小时前
macOS环境安装/卸载python实践笔记
笔记·python·macos
TechWJ7 小时前
PyPTO编程范式深度解读:让NPU开发像写Python一样简单
开发语言·python·cann·pypto
枷锁—sha7 小时前
【SRC】SQL注入WAF 绕过应对策略(二)
网络·数据库·python·sql·安全·网络安全
abluckyboy7 小时前
Java 实现求 n 的 n^n 次方的最后一位数字
java·python·算法