zoukankan      html  css  js  c++  java
  • python学习——利用循环实现分类散点图绘制

    数据示例

    代码实例

     1 #!/usr/bin/env python
     2 # -*- coding: utf-8 -*-
     3 # 绘制分类散点图
     4 
     5 import os
     6 import argparse
     7 import csv
     8 import pandas as pd
     9 import numpy as np
    10 import matplotlib.pyplot as plt
    11 12 
    13 file_path = r'E:8_cooperation9_TCReport医学部数据NIPT_PGS_190604.xlsx' # 数据路径
    14 NIPT_PGS = pd.read_excel(file_path,sheet_name='sub_data',header=0,index_col='SeqID') # 读取数据
    15 print(NIPT_PGS.head()) # 查看前6行数据
    16 columns = NIPT_PGS.columns # 获取列标签(变量名称),为后续循环使用
    17 types = np.unique(NIPT_PGS['Type']) # 获取分类标签,为后续分类循环使用
    18 print(len(columns)) # 查看列数
    19 print(types) # 查看分类
    20 print('running...')
    21 for j in range(len(columns)): # 对变量按照变量数目进行循环
    22     for i in range(len(types)): # 对分类按照分类数目进行循环
    23         plt.scatter(NIPT_PGS.loc[NIPT_PGS['Type']==types[i],'Density(um^2)']
    24         ,NIPT_PGS.loc[NIPT_PGS['Type']==types[i],columns[j]]
    25         ,s=20
    26         ,c=np.array(plt.cm.tab10(i/len(types))).reshape(1,-1)
    27         ,label=types[i])
    28     plt.legend() # 展示分类标签
    29     plt.xlabel('Density(um^2)')
    30     plt.ylabel(columns[j])
    31     plt.tight_layout() #设置为紧凑型
    32     plt.savefig(r'E:8_cooperation9_TCReport医学部数据\%d.png'%(j+1)) # 输出图片
    33     plt.close() # 关闭
    34 print('finished') # 通知完成

  • 相关阅读:
    对List进行子查询及分组
    网格数据库架构设计构想
    推荐一款简单实用的漏洞测试工具:Paros
    用友U9产品SOA设计架构遭技术质疑
    超简单使用MemCached
    不按常规出招
    如何学好AJax、求高手指点
    Begin
    SpringBoot基础
    SpringBoot基础学习(番外9.1)Spring MVC或Spring Boot配置默认访问页面不生效?
  • 原文地址:https://www.cnblogs.com/caicai2019/p/10973696.html
Copyright © 2011-2022 走看看