之前学习了matplotlib的一些基本画图方法(查看上一节),这次主要是学习在图中加一些文字和其其它有趣的东西。

先来个最简单的图

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) plt.show()

接下来加一下文字描述,第一种方法,plt.text()

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) plt.text(
-2,#文字x坐标
2,#文字y坐标
'this is simple text',#内容
fontsize=14#文字大小
) 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) plt.text(
-2,#文字x坐标
2,#文字y坐标
'this is simple text',#内容
fontsize=14#文字大小
)
plt.text(
-2,#文字x坐标
4,#文字y坐标
r'$this\ is\ simple\ text\ \alpha_i\ \mu_i$',#用$包住空格需要用转义字符转义,包括特殊字符alpha等也需要,alpha_i表示alpha下标i
fontsize=14#文字大小
) plt.show()

接下来,第二种文字描述,这种要高级一点,用plt.annotate()实现,比如我要在曲线上x=1.5的地方加

并且向右下偏移一些位置,加上一个曲线箭头指向x=1.5的点

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) plt.text(
-2,#文字x坐标
2,#文字y坐标
'this is simple text',#内容
fontsize=14#文字大小
)
plt.text(
-2,#文字x坐标
4,#文字y坐标
r'$this\ is\ simple\ text\ \alpha_i\ \mu_i$',#内容
fontsize=14#文字大小
) x0 = 1.5
y0 = x0**2
plt.scatter(x0, y0, s=50, color='r')
plt.plot([x0, x0], [0, y0], linestyle='--', linewidth=2.0)
plt.annotate(r'$x**2=%s$' % y0,#内容
xy=(x0, y0),#文字坐标
xycoords='data',#文字坐标以data也就是x,y的值为基准
xytext=(+20,-30),#文字相对于xy坐标的偏移量
textcoords='offset points',#偏移基准
arrowprops=dict(arrowstyle='->',connectionstyle='arc3,rad=.2')#画一个曲线箭头指向xy坐标
) plt.show()

效果如上图,此方法比较复杂,详细参数说明可以参考官方api,好了,到这里就大功告成!

接下来准备学习一些常用类型的图了。

机器学习-数据可视化神器matplotlib学习之路(二)的更多相关文章

  1. 机器学习-数据可视化神器matplotlib学习之路(五)

    这次准备做一下pandas在画图中的应用,要做数据分析的话这个更为实用,本次要用到的数据是pthon机器学习库sklearn中一组叫iris花的数据,里面组要有4个特征,分别是萼片长度.萼片宽度.花瓣 ...

  2. 机器学习-数据可视化神器matplotlib学习之路(三)

    之前学习了一些通用的画图方法和技巧,这次就学一下其它各种不同类型的图.好了先从散点图开始,上代码: from matplotlib import pyplot as plt import numpy ...

  3. 机器学习-数据可视化神器matplotlib学习之路(一)

    直接上代码吧,说明写在备注就好了,这次主要学习一下基本的画图方法和常用的图例图标等 from matplotlib import pyplot as plt import numpy as np #这 ...

  4. 机器学习-数据可视化神器matplotlib学习之路(四)

    今天画一下3D图像,首先的另外引用一个包 from mpl_toolkits.mplot3d import Axes3D,接下来画一个球体,首先来看看球体的参数方程吧 (0≤θ≤2π,0≤φ≤π) 然 ...

  5. Python数据可视化——使用Matplotlib创建散点图

    Python数据可视化——使用Matplotlib创建散点图 2017-12-27 作者:淡水化合物 Matplotlib简述: Matplotlib是一个用于创建出高质量图表的桌面绘图包(主要是2D ...

  6. [机器学习]-[数据预处理]-中心化 缩放 KNN(二)

    上次我们使用精度评估得到的成绩是 61%,成绩并不理想,再使 recall 和 f1 看下成绩如何? 首先我们先了解一下 召回率和 f1. 真实结果 预测结果 预测结果   正例 反例 正例 TP 真 ...

  7. 学机器学习,不会数据分析怎么行——数据可视化分析(matplotlib)

    前言 前面两篇文章介绍了 python 中两大模块 pandas 和 numpy 的一些基本使用方法,然而,仅仅会处理数据还是不够的,我们需要学会怎么分析,毫无疑问,利用图表对数据进行分析是最容易的, ...

  8. python 数据可视化(matplotlib)

    matpotlib 官网 :https://matplotlib.org/index.html matplotlib 可视化示例:https://matplotlib.org/gallery/inde ...

  9. 绘图和数据可视化工具包——matplotlib

    一.Matplotlib介绍 Matplotlib是一个强大的Python**绘图**和**数据可视化**的工具包. # 安装方法 pip install matplotlib # 引用方法 impo ...

随机推荐

  1. 自定义WordPress文件上传路径

    自WordPress 3.5版本开始,隐藏了后台媒体设置页面的“默认上传路径和文件的完整URL地址”选项,可以通过下面的代码将该选项调出来. 将下面的代码添加到当前主题functions.php文件中 ...

  2. [py]letcode第一题求和

    letcode第一题, tm的不好弄. 想了很久想到了一个粗蠢的解决办法. Given an array of integers, return indices of the two numbers ...

  3. [LeetCode] 557. Reverse Words in a String III_Easy tag: String

    Given a string, you need to reverse the order of characters in each word within a sentence while sti ...

  4. selenium webdriver处理HTML5 的视频播放

    import org.openqa.selenium.By; import org.openqa.selenium.JavascriptExecutor; import org.openqa.sele ...

  5. react-native 0.57 run-ios 失败解决办法

    React Native 日常报错 'config.h' file not found     版权声明:本文为博主原创文章,未经博主允许不得转载. https://blog.csdn.net/qq_ ...

  6. Bootstrap学习笔记-响应式布局原理

    响应式布局的原理就是利用css3中@media媒体来实现的 <html> <head> <meta charset="utf-8"> <t ...

  7. POJ 1836

    刚开始二分写错了 wa了很久 这个二分 的好好想想 #include <iostream> #include<cstdio> #include<string.h> ...

  8. 在HTML中实现和使用遮罩层

    Web页面中使用遮罩层,可防止重复操作,提示loading:也可以模拟弹出模态窗口. 实现思路:一个DIV作为遮罩层,一个DIV显示loading动态GIF图片.在下面的示例代码中,同时展示了如何在i ...

  9. RHEL6.4 字符模式下安装图形界面图文教程

    本文转自:http://www.cnblogs.com/wahsonleung/p/3230325.html 第1步:当然就是启动redhat,设置映像文件. 第2步:命令行输入yum groupin ...

  10. DeepMind已将AlphaGo引入多领域 Al泡沫严重

    DeepMind已将AlphaGo引入多领域 Al泡沫严重 在稳操胜券的前提下,谷歌旗下的AlphaGo还是向柯洁下了战书.4月10日,由中国围棋协会.浙江省体育局.谷歌三方联合宣布,将于5月23日至 ...