博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
python数据可视化
阅读量:7032 次
发布时间:2019-06-28

本文共 3392 字,大约阅读时间需要 11 分钟。

1、安装matplotlib

在 cmd 中键入 python -m pip install matplotlib,系统将自动安装,需要等一段时间,待完成后 python -m pip list ,显示

敲黑板划重点:一定通过 cdm 指定具体安装文件夹。  cd 文件夹名 可进入指定文件夹。

2、简易画图

2.1 直线图

import matplotlib.pyplot as ply '导入模块 pyplot,并自定义为ply' input_value = [1,2,3,4,5,6] squares =[1,4,9,16,25,36 ] ply.plot(input_value,squares,linewidth = 5) '画图命令,并接收input_value作为x,squares 作为y,linewidth指定线条粗细' ply.title("square numbers",fontsize= 24) '图标标题' ply.xlabel("value",fontsize = 12) '图表横坐标的标题 value,和字的大小 fontsize' ply.ylabel("squares",fontsize = 12) '图表横坐标的标题,和字的大小' ply.tick_params(axis="both",labelsize=14) "指定横纵坐标axis= 'both'上的标尺字的大小 labelsize" ply.show() '显示图形' 输出图像:

 2.2 散点图

import matplotlib.pyplot as plt x_value = list(range(0,100,2)) y_value = [x**2 for x in x_value] '自动生成计算数据' print(x_value) print(y_value) plt.scatter(x_value,y_value,s=10) #plt.scatter(x_value,y_value,c=y_value,cmap=plt.cm.Blues,edgecolor='None',s=10) '参数c 设置成一个y值的列表,参数cmap 是采用的颜色映射的种类。参数edgecolor 是去掉散点的黑边' 'scatter()显示点的大小是 s= 10,plot() 显示线条粗细的是linewidth= 10' plt.title("squares number",fontsize= 20) plt.xlabel("value",fontsize=10) plt.ylabel("square",fontsize=10) plt.tick_params(axis="both",which = 'major',labelsize= 10) plt.savefig('squares_scatter.png',bbox_inches= 'tight')  '保存图片为squares_scatter.png,并且bbox_inches ='tighr'只保存图像,删除多余空白' plt.show() 使用scatter()函数绘制散点图 输出结果:

颜色映射(colomap)是一系列颜色,他们从颜色渐变到结束颜色。

输出结果:

3、随机漫步:每次决策都是随机决定的。

 rand_walk.py

from random import choice '从 random modules中导入choice' class RandomWalk(object):     '创建一个类 RandomWalk().'     def __init__(self,num_point = 5000):         '初始化类的属性'         self.num_point = num_point         self.x_value=[ 0 ]         self.y_value=[ 0 ]         '指定开始位置'     def fill_walk(self):         '定义随机漫步的方法,'         while len(self.x_value) < self.num_point:             x_direction = choice([1,-1])             '随机漫步的方向 1:向右   -1: 向左'             x_distance = choice([0,1,2,3,4,5])             '随机漫步的距离'             x_step = x_direction * x_distance             '随机漫步的 位移(大小和方向)'             y_direction = choice([-1,1])             y_distance = choice([0,1,2,3,4,5])             y_step = y_direction * y_distance             if x_step ==0 and y_step ==0:                 continue             '避免原地踏步'             next_x =self.x_value[-1] + x_step             '确定 点的 新位置'             next_y =self.y_value[-1] + y_step             self.x_value.append(next_x)             '将已经走过的点 添加到列表中'             self.y_value.append(next_y)

 random_walk_show :

import matplotlib.pyplot as plt '导入matplotlib.pilot 命名为 plt' from random_walk import RandomWalk "从random_walk 中导入 RandomWalk 类" while True:     rw =RandomWalk()     rw.fill_walk()     '调用 fill_walk() 方法'     point = list(range(rw.num_point))     '生成和步数一样多的列表'     plt.scatter(rw.x_value,rw.y_value,c=point,cmap = plt.cm.Reds,                 edgecolor = None,s=10)     plt.scatter(0,0,c= "green",edgecolor= "None",s=20)     plt.scatter(rw.x_value[-1],rw.y_value[-1],c="green",edgecolor = "None",s=50)     '突出首个点 和 最后一个点 '     plt.axes().get_xaxis().set_visible(False)     plt.axes().get_yaxis().set_visible(False)     '隐藏横纵坐标'     plt.show()     keep_running = input("make another walk? y or n :")     if keep_running == 'n':         break     '判断时候继续 随机漫步' 随机漫步生成的图:

                      

 

 

 
 

 

 

补充: 如果想使得输出的图像大小适合屏幕大小,可以使用:plt.figure(dpi=128,figsize=(20,10)) 其中向dpi传递是分辨率,向figsize传递以元组,指定绘图窗口的尺寸。(没看出区别多大!)

转载于:https://www.cnblogs.com/daimatuo/p/10291223.html

你可能感兴趣的文章
Miller-Rabin随机性素数测试算法(Miller_Rabin模板)
查看>>
转eclipse failed to create the java virtual machine
查看>>
研究float的一些好文章
查看>>
我的友情链接
查看>>
TCP/IP(二) —— TCP 概述
查看>>
ROS-Indigo版在Ubuntu上的安装
查看>>
Spark for Spatial,相关资源
查看>>
oracle数据导入导出
查看>>
Flask-RESTful构建小型REST服务
查看>>
LB集群--LVS部署
查看>>
AIX磁带备份
查看>>
ELK 6.4 实时日志分析系统
查看>>
Zend Studio使用教程之在Linux上进行安装
查看>>
linux下上传本地文件至github
查看>>
Android VelocityTracker
查看>>
oracle 修改表名几种方法
查看>>
deepin15.4配置nginx时出现主页展现,其他全部找不到的问题
查看>>
python基础一:之字符串
查看>>
用emacs进行批量查找替换的例子
查看>>
开源 免费 java CMS - FreeCMS-数据对象-link
查看>>