欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

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

程序员文章站 2024-03-22 12:12:40
...

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


 

相关标签: python