Python 之大数据量的可视化----Matplotlib

Python 数据可视化处理的库:Matplotlib

1:安装Matplotlib:我用的是centos7,并且将python 升级了,原来centos自带的是python2.7.5的版本,升级之后会到来一些列的问题,(我将/etc/bin/  里的python -> python3)例如:yum安装软件的时候会报错,这里将yum相关的配置文件进行更改,打开:/etc/bin          ls yum* 将列出的所有yum文件都进行修改

    #!/usr/bin/python ---->  #!/usr/bin/python2就好了就可以正常的安装软件了

2:安装Matplotlib的相关依赖:这里我用的是Python3.6的版本,安装如下依赖:

      sudo yum install -y tk-devel tkinter

      注意在ubuntu系列中 tk-devel 对应下载的应该是tk-dev

      然后在用pip3安装Matplotlib

       pip3 install --user matplotlib

3:使用matplotlib库:

     我做的测试是在IDE中完成的(Pycharm)

          下面来一个随机漫步的小实验:

      1:创建随机漫步的类:RandomWalk

          class_randdmWalk.py

from random import choice
class RandomWalk():
        def __init__(self,number_points)
                 self.number_points = number_points
                 self.x_value=[0]
                 self.y_value=[0]
        def  fill_work():
              #确定x向前还是向后
            x_direction = choice([1,-1])
              #确定x向前或者向后移动的距离
            x_distance = choice([0,1,2,3,4,5])
            #确定x移动的步数
            x_step = x_direction * x_distance

            #同理y也是一样的
             #确定向前还是向后
            y_direction = choice([1,-1])
              #确定y向前或者向后移动的距离
            y_distance = choice([0,1,2,3,4,5])
            #确定y移动的步数
            y_step = y_direction * y_distance
            #杜绝这么一种情况,x_step = y_step = 0
            if  x_step == 0 and y_step == 0:
                  continue
            #开始移动
            next_x = x_step + self.x_value[-1]
            next_y = y_step + self.y_value[-1]
            #将新的x,y的坐标进行存储
            self.x_value.append(next_x)
            self.y_value.append(next_y)
               
       我们这里引入了random 包的choice方法:从给定数组中随机选择一个数字,我们排除了原地移动的情况

对上面返回的数据进行绘制:

    rw_plot.py

       

from class_randomWalk import RandomWalk
import matplotlib.pyplot as plt
while True:
      #创建一个RandomWalk对象,创建一个包含5000个点的对象
     rw = RandomWalk(5000)
     #开始随机漫步
     rw.fill_work()
     #随机漫步结束这时候该对象的数组内容已经被填充完毕
     #开始画散点图
     plt.scatter(rw.x_value,rw.y_value,c=rw.number_points,cmap=plt.cm.Reds,edgecolor='none',s=10)
     #将第一个和最后一个散点的颜色和大小进行变化易于观察
     plt.scatter(0,0,c='green',edgecolor='none',s=100)
     plt.scatter(rw.x_value[-1],rw.y_value[-1],c='blue',edgecolor='none',s=100)
     plt.show()
     keep_walking = input("Keep walking?(y|n):")
     if(keep_walking == 'n'):
          break
 
       plt.scatter()是绘制散点图的方法,参数c是点的个数或者每个点的颜色,cmap是颜色映射,edgecolor是每个点的外轮廓,s 是每个点的大小,这里我们为第一个点和最后一个点设置大小大一点易与区分

下面是运行后的情况:

                Python 之大数据量的可视化----Matplotlib_第1张图片


 

你可能感兴趣的:(Python)