机器学习-数据可视化神器matplotlib学习之路(一)
直接上代码吧,说明写在备注就好了,这次主要学习一下基本的画图方法和常用的图例图标等
from matplotlib import pyplot as plt
import numpy as np #这里是最最基本的代码了
#x轴-2到2均分50个点
x = np.linspace(-2, 2, 50)
y = x**2
plt.plot(x, y)
plt.show()

下面要加一下元素和样式了
from matplotlib import pyplot as plt
import numpy as np x = np.linspace(-2, 2, 50)
y = x**2
plt.xlim((-3,3))#设置x坐标范围
plt.ylim((0,5))#设置y坐标范围
plt.plot(x, y,
linestyle='--',#线条的样式
linewidth=2.0,#线条宽度
alpha=0.5,#透明度,数字越小越透明,范围(0-1)
marker='.',#每个点的样式
color='r',#颜色
label='y=x**2'#图例
)
#打开图例,不然plt.plot里面的label属性会无效
plt.legend(
loc='upper right'#指定图例位置,这里是右上,默认为best会自动选择最优的位置
)
plt.show()

到这里,如果我们想要x轴刻度自由控制一下可以用 plt.xticks 来实现
from matplotlib import pyplot as plt
import numpy as np x = np.linspace(-2, 2, 50)
y = x**2
plt.xlim((-3,3))#设置x坐标范围
plt.ylim((0,5))#设置y坐标范围
plt.plot(x, y,
linestyle='--',#线条的样式
linewidth=2.0,#线条宽度
alpha=0.5,#透明度,数字越小越透明,范围(0-1)
marker='.',#每个点的样式
color='r',#颜色
label='y=x**2'#图例
)
#打开图例,不然plt.plot里面的label属性会无效
plt.legend(
loc='upper right'#指定图例位置,这里是右上,默认为best会自动选择最优的位置
) new_xticks = np.linspace(-2, 2, 6)
plt.xticks(new_xticks)#在-2到2之间平均显示6个刻度 plt.show()

这里x轴刻度就和之前发生一点变化,有时候不需要用具体数字而是一个文字标签显示,比如y轴0以上的为normal,2以上为good,4以上为very good,
可以用 plt.yticks([0, 2, 4], [‘normal’,'good','very good']) 来实现,接下来就来实现一下
from matplotlib import pyplot as plt
import numpy as np x = np.linspace(-2, 2, 50)
y = x**2
plt.xlim((-3,3))#设置x坐标范围
plt.ylim((0,5))#设置y坐标范围
plt.plot(x, y,
linestyle='--',#线条的样式
linewidth=2.0,#线条宽度
alpha=0.5,#透明度,数字越小越透明,范围(0-1)
marker='.',#每个点的样式
color='r',#颜色
label='y=x**2'#图例
)
#打开图例,不然plt.plot里面的label属性会无效
plt.legend(
loc='upper right'#指定图例位置,这里是右上,默认为best会自动选择最优的位置
) new_xticks = np.linspace(-2, 2, 6)
plt.xticks(new_xticks)#在-2到2之间平均显示6个刻度 plt.yticks([0, 2, 4], [r'$normal$', r'$good$', r'$very\ good$'])#前后对应上就好了,$包住的是调整默认字体 plt.show()

接下来就是对坐标轴的处理了,我们想要移动坐标,用方框的左边和下班做y轴和x轴,右边和上班把颜色去掉,然后移动一下x和y轴
from matplotlib import pyplot as plt
import numpy as np x = np.linspace(-2, 2, 50)
y = x**2
plt.xlim((-3,3))#设置x坐标范围
plt.ylim((0,5))#设置y坐标范围
plt.plot(x, y,
linestyle='--',#线条的样式
linewidth=2.0,#线条宽度
alpha=0.5,#透明度,数字越小越透明,范围(0-1)
marker='.',#每个点的样式
color='r',#颜色
label='y=x**2'#图例
)
#打开图例,不然plt.plot里面的label属性会无效
plt.legend(
loc='upper right'#指定图例位置,这里是右上,默认为best会自动选择最优的位置
) new_xticks = np.linspace(-2, 2, 6)
plt.xticks(new_xticks)#在-2到2之间平均显示6个刻度 plt.yticks([0, 2, 4], [r'$normal$', r'$good$', r'$very\ good$'])#前后对应上就好了,$包住的是调整默认字体 gca = plt.gca()
gca.spines['right'].set_color('none')#将图像方框右边颜色取消
gca.spines['top'].set_color('none')#将图像方框上边颜色取消
gca.xaxis.set_ticks_position('bottom')#x轴设为方框下边
gca.yaxis.set_ticks_position('left')#y轴设为方框左边
gca.spines['bottom'].set_position(('data', 1))#将方框下边也就是x轴移动到y=1的位置
gca.spines['left'].set_position(('data', 0))#将方框左边也就是y轴移动到x=0的位置 plt.show()

这里的方法稍微有点麻烦,折腾了一下终于大功告成了!今天就到这儿,下次准备学习一下更怎样在图中用文字和其它说明
机器学习-数据可视化神器matplotlib学习之路(一)的更多相关文章
- 机器学习-数据可视化神器matplotlib学习之路(五)
这次准备做一下pandas在画图中的应用,要做数据分析的话这个更为实用,本次要用到的数据是pthon机器学习库sklearn中一组叫iris花的数据,里面组要有4个特征,分别是萼片长度.萼片宽度.花瓣 ...
- 机器学习-数据可视化神器matplotlib学习之路(三)
之前学习了一些通用的画图方法和技巧,这次就学一下其它各种不同类型的图.好了先从散点图开始,上代码: from matplotlib import pyplot as plt import numpy ...
- 机器学习-数据可视化神器matplotlib学习之路(二)
之前学习了matplotlib的一些基本画图方法(查看上一节),这次主要是学习在图中加一些文字和其其它有趣的东西. 先来个最简单的图 from matplotlib import pyplot as ...
- 机器学习-数据可视化神器matplotlib学习之路(四)
今天画一下3D图像,首先的另外引用一个包 from mpl_toolkits.mplot3d import Axes3D,接下来画一个球体,首先来看看球体的参数方程吧 (0≤θ≤2π,0≤φ≤π) 然 ...
- Python数据可视化——使用Matplotlib创建散点图
Python数据可视化——使用Matplotlib创建散点图 2017-12-27 作者:淡水化合物 Matplotlib简述: Matplotlib是一个用于创建出高质量图表的桌面绘图包(主要是2D ...
- 学机器学习,不会数据分析怎么行——数据可视化分析(matplotlib)
前言 前面两篇文章介绍了 python 中两大模块 pandas 和 numpy 的一些基本使用方法,然而,仅仅会处理数据还是不够的,我们需要学会怎么分析,毫无疑问,利用图表对数据进行分析是最容易的, ...
- python 数据可视化(matplotlib)
matpotlib 官网 :https://matplotlib.org/index.html matplotlib 可视化示例:https://matplotlib.org/gallery/inde ...
- 绘图和数据可视化工具包——matplotlib
一.Matplotlib介绍 Matplotlib是一个强大的Python**绘图**和**数据可视化**的工具包. # 安装方法 pip install matplotlib # 引用方法 impo ...
- Python数据可视化库-Matplotlib(一)
今天我们来学习一下python的数据可视化库,Matplotlib,是一个Python的2D绘图库 通过这个库,开发者可以仅需要几行代码,便可以生成绘图,直方图,功率图,条形图,错误图,散点图等等 废 ...
随机推荐
- 006-jdk1.5版本新特性
一.Java SE 5.0 (1.5.0) 名称:Tiger(老虎) 发布日期:2004-09-30 新特性: 1.1.静态导入 定义:静态导入用于简化程序对类静态属性和方法的调用. 语法: impo ...
- SQLite-创建、附加、分离数据库
创建数据库 - $> sqlite3 DatabaseName.db 附加数据库 - sqlite> ATTACH DATABASE 'DatabaseName.db' AS 'Alias ...
- pem转cer
openssl x509 -inform pem -in fullchain.pem -outform der -out fullchain.cer
- matplotlib--画图时保存图片空白的问题
问题: 当使用如下代码保存使用 plt.savefig 保存生成的图片时,结果打开生成的图片却是一片空白. import matplotlib.pyplot as plt ""&q ...
- jxl(Java Excel API) 使用方法 【1】
// 构建Workbook对象, 只读Workbook对象 // 直接从本地文档创建Workbook // 从输入流创建Workbook Workbook workbook = nul ...
- HOW TO: 在 Visual C# .NET 应用程序中提供文件拖放功能
本文假定您熟悉下列主题: Windows 窗体列表框控件 Windows 窗体事件处理 生成示例的步骤 列表框控件提供了您需要处理的两个拖放事件: DragEnter 和 DragDrop. 当您在控 ...
- css+div table
div+css table表格样式 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" " ...
- VS2010/MFC编程入门之四十八(字体和文本输出:文本输出)
鸡啄米在上一节中讲了CFont字体类,本节主要讲解文本输出的方法和实例. 文本输出过程 在文本输出到设备以前,我们需要确定字体.字体颜色和输出的文本内容等信息.Windows窗口的客户区由应用程序管理 ...
- MySQL从删库到跑路_高级(一)——数据完整性
作者:天山老妖S 链接:http://blog.51cto.com/9291927 一.数据完整性简介 1.数据完整性简介 数据冗余是指数据库中存在一些重复的数据,数据完整性是指数据库中的数据能够正确 ...
- C/C++之static函数与普通函数
全局变量(外部变量)的说明之前再冠以static 就构成了静态的全局变量.全局变量本身就是静态存储方式, 静态全局变量当然也是静态存储方式.这两者在存储方式上并无不同.这两者的区别虽在于非静态全局变量 ...