zoukankan      html  css  js  c++  java
  • 【数据分析&数据挖掘】2000-2017年各个产业、行业的散点图

     1 import matplotlib.pyplot as plt
     2 import numpy as np
     3 
     4 def draw_data(n, a, b, l, values, fig, plt):
     5     fig.add_subplot(2, 1, n)
     6     x = values[:, 0]
     7     for i in range(a, b+1):
     8         y = values[:, i]
     9         plt.scatter(x, y)
    10     plt.title("2000-2017年各个产业、行业的散点图")
    11     plt.xlabel("季度")
    12     plt.ylabel("生产总值(亿元)")
    13     plt.legend(l, loc=2)
    14     xticks = values[:, 1]
    15     plt.xticks(x[::4], xticks[::4], rotation=45)
    16     return plt
    17 
    18 def show_data():
    19     fig = plt.figure(figsize=(20, 12), dpi=120)
    20     plt.rcParams['font.sans-serif'] = 'SimHei'
    21     plt.rcParams['axes.unicode_minus'] = False
    22     plt.subplots_adjust(hspace=0.3)
    23     return fig, plt
    24 
    25 def save_data():
    26     plt.savefig("./2000-2017年各个产业、行业的散点图.png")
    27     plt.show()
    28     return None
    29 
    30 
    31 def build_data():
    32     res = np.load("./国民经济核算季度数据.npz", allow_pickle=True)
    33     columns = res["columns"]
    34     values = res["values"]
    35     return columns, values
    36 
    37 def main():
    38     columns, values = build_data()
    39     fig, plt = show_data()
    40     legend1 = [tmp[:4] for tmp in columns[3:6]]
    41     draw_data(1, 3, 5, legend1, values, fig, plt)
    42     legend2 = [tmp[:2] for tmp in columns[6:]]
    43     draw_data(2, 6, 14, legend2, values, fig, plt)
    44     save_data()
    45 
    46 
    47 
    48 if __name__ == '__main__':
    49     main()
    50 
    51 # 场景一:类似于折线走势的这种散点图 也可以用来描述走势
    52 # 场景二:可以用来描述 点与点(数据与数据)的关系

  • 相关阅读:
    C#基础知识简单梳理
    knearest neighbor
    二叉查找树的实现
    Unix/Linux 那些系统启动后的进程
    Nginx反向代理IIS
    线程漫谈——线程同步之信号量和互斥量
    BtxCMS@B.T.X 项目及界面展示 [下载]
    MVC in MFC or WTL
    HTTP HTTPS WebService
    ASP.NET WebAPI RC 竟然不支持最常用的json传参
  • 原文地址:https://www.cnblogs.com/Tree0108/p/12115919.html
Copyright © 2011-2022 走看看