《Python数据可视化之matplotlib实践》 源码 第一篇 入门 第一章
最近手上有需要用matplotlib画图的活,在网上淘了本实践书,发现没有代码,于是手敲了一遍,mark下。
第一篇 第一章
图1.1
import matplotlib.pyplot as plt
import numpy as np from matplotlib import cm as cm #define data
x=np.linspace(0.5, 3.5, 100)
y=np.sin(x)
y1=np.random.randn(100) #scatter figure
plt.scatter(x, y1, c='0.25', label='scatter figure') #plot figure
plt.plot(x, y, ls='--', lw=2, label='plot figure') #some clean up
#去掉上边框和有边框
for spine in plt.gca().spines.keys():
if spine=='top' or spine=='right':
plt.gca().spines[spine].set_color('none') # x轴的刻度在下边框
plt.gca().xaxis.set_ticks_position('bottom') # y轴的刻度在左边框
plt.gca().yaxis.set_ticks_position('left') #设置x轴、y轴范围
plt.xlim(0.0, 4.0)
plt.ylim(-3.0, 3.0) #设置x轴、y轴标签
plt.xlabel('x_axis')
plt.ylabel('y_axis') #绘制x、y轴网格
plt.grid(True, ls=':', color='r') #绘制水平参考线
plt.axhline(y=0.0, c='r', ls='--', lw=2) #绘制垂直参考区域
plt.axvspan(xmin=1.0, xmax=2.0, facecolor='y', alpha=0.5) #绘制注解
plt.annotate('maximum', xy=(np.pi/2, 1.0), xytext=((np.pi/2)+0.15, 1.5),
weight='bold', color='r', arrowprops=dict(arrowstyle='->',
connectionstyle='arc3', color='r')) #绘制注解
plt.annotate('spines', xy=(0.75, -3), xytext=(0.35, -2.25),
weight='bold', color='r', arrowprops=dict(arrowstyle='->',
connectionstyle='arc3', color='r')) #绘制注解
plt.annotate('', xy=(0, -2.78), xytext=(0.4, -2.32),
weight='bold', color='r', arrowprops=dict(arrowstyle='->',
connectionstyle='arc3', color='r')) #绘制注解
plt.annotate('', xy=(3.5, -2.98), xytext=(3.6, -2.7),
weight='bold', color='r', arrowprops=dict(arrowstyle='->',
connectionstyle='arc3', color='r')) #绘制文本
plt.text(3.6, -2.70, "'|' is tickline", weight='bold', color='b')
plt.text(3.6, -2.95, "3.5 is tickline", weight='bold', color='b') plt.title("structure of matplotlib") plt.legend(loc='upper right') plt.show()
=======================================================
图 1.2
import matplotlib.pyplot as plt
import numpy as np x=np.linspace(0.05, 10, 1000)
y=np.cos(x) plt.plot(x,y,ls='-.', lw=2, c='c', label='plot figure') plt.legend() plt.show()
=======================================================
图 1.3
import matplotlib.pyplot as plt
import numpy as np x=np.linspace(0.05, 10, 1000)
y=np.random.rand(1000) plt.scatter(x,y,label='scatter figure') plt.legend() plt.show()
=======================================================
图1.4
import matplotlib.pyplot as plt
import numpy as np x=np.linspace(0.05, 10, 1000)
y=np.random.rand(1000) plt.scatter(x,y,label='scatter figure') plt.legend() plt.xlim(0.05, 10)
plt.ylim(0, 1) plt.show()
=======================================================
图 1.5
import matplotlib.pyplot as plt
import numpy as np x=np.linspace(0.05, 10, 1000)
y=np.sin(x) plt.plot(x,y,ls='-.', lw=2, c='c', label='plot figure') plt.xlabel('x-axis')
plt.ylabel('y-axis') plt.legend() plt.show()
=======================================================
图 1.6
import matplotlib.pyplot as plt
import numpy as np x=np.linspace(0.05, 10, 1000)
y=np.sin(x) plt.plot(x,y,ls='-.', lw=2, c='c', label='plot figure') plt.grid(linestyle=':', color='r') plt.legend() plt.show()
=======================================================
图 1.7
import matplotlib.pyplot as plt
import numpy as np x=np.linspace(0.05, 10, 1000)
y=np.sin(x) plt.plot(x,y,ls='-.', lw=2, c='c', label='plot figure') plt.axhline(y=0.0, c='r', ls='--', lw=2)
plt.axvline(x=4.0, c='r', ls='--', lw=2) plt.legend() plt.show()
=======================================================
图 1.8
import matplotlib.pyplot as plt
import numpy as np x=np.linspace(0.05, 10, 1000)
y=np.sin(x) plt.plot(x,y,ls='-.', lw=2, c='c', label='plot figure') plt.axvspan(xmin=4.0, xmax=6.0, facecolor='y', alpha=0.3)
plt.axhspan(ymin=0.0, ymax=0.5, facecolor='y', alpha=0.3) plt.legend() plt.show()
=======================================================
图 1.9
import matplotlib.pyplot as plt
import numpy as np x=np.linspace(0.05, 10, 1000)
y=np.sin(x) plt.plot(x,y,ls='-.', lw=2, c='c', label='plot figure') plt.annotate('maximum', xy=(np.pi/2, 1.0), xytext=((np.pi/2)+1.0, 0.8),weight='bold', color='b',
arrowprops=dict(arrowstyle='->', connectionstyle='arc3', color='b')) plt.legend() plt.show()
=======================================================
图 1.10
import matplotlib.pyplot as plt
import numpy as np x=np.linspace(0.05, 10, 1000)
y=np.sin(x) plt.plot(x,y,ls='-.', lw=2, c='c', label='plot figure') plt.text(3.1, 0.09, 'y=sin(x)', weight='bold', color='b') plt.legend() plt.show()
=======================================================
图 1.11
import matplotlib.pyplot as plt
import numpy as np x=np.linspace(0.05, 10, 1000)
y=np.sin(x) plt.plot(x,y,ls='-.', lw=2, c='c', label='plot figure') plt.title("y=sin(x)") plt.legend() plt.show()
=======================================================
图 1.12
import matplotlib.pyplot as plt
import numpy as np x=np.linspace(0.05, 10, 1000)
y=np.sin(x) plt.plot(x,y,ls='-.', lw=2, c='c', label='plot figure') plt.legend(loc="lower right") plt.show()
《Python数据可视化之matplotlib实践》 源码 第一篇 入门 第一章的更多相关文章
- Python数据可视化——使用Matplotlib创建散点图
Python数据可视化——使用Matplotlib创建散点图 2017-12-27 作者:淡水化合物 Matplotlib简述: Matplotlib是一个用于创建出高质量图表的桌面绘图包(主要是2D ...
- python 数据可视化(matplotlib)
matpotlib 官网 :https://matplotlib.org/index.html matplotlib 可视化示例:https://matplotlib.org/gallery/inde ...
- Python数据可视化库-Matplotlib(一)
今天我们来学习一下python的数据可视化库,Matplotlib,是一个Python的2D绘图库 通过这个库,开发者可以仅需要几行代码,便可以生成绘图,直方图,功率图,条形图,错误图,散点图等等 废 ...
- Python数据可视化之Matplotlib实现各种图表
数据分析就是将数据以各种图表的形式展现给领导,供领导做决策用,因此熟练掌握饼图.柱状图.线图等图表制作是一个数据分析师必备的技能.Python有两个比较出色的图表制作框架,分别是Matplotlib和 ...
- Python数据可视化利器Matplotlib,绘图入门篇,Pyplot介绍
Pyplot matplotlib.pyplot是一个命令型函数集合,它可以让我们像使用MATLAB一样使用matplotlib.pyplot中的每一个函数都会对画布图像作出相应的改变,如创建画布.在 ...
- Python数据可视化库-Matplotlib(二)
我们接着上次的继续讲解,先讲一个概念,叫子图的概念. 我们先看一下这段代码 import matplotlib.pyplot as plt fig = plt.figure() ax1 = fig.a ...
- Python数据可视化之matplotlib
常用模块导入 import numpy as np import matplotlib import matplotlib.mlab as mlab import matplotlib.pyplot ...
- python数据可视化(matplotlib)
- python数据可视化-matplotlib入门(7)-从网络加载数据及数据可视化的小总结
除了从文件加载数据,另一个数据源是互联网,互联网每天产生各种不同的数据,可以用各种各样的方式从互联网加载数据. 一.了解 Web API Web 应用编程接口(API)自动请求网站的特定信息,再对这些 ...
- Python数据可视化的四种简易方法
摘要: 本文讲述了热图.二维密度图.蜘蛛图.树形图这四种Python数据可视化方法. 数据可视化是任何数据科学或机器学习项目的一个重要组成部分.人们常常会从探索数据分析(EDA)开始,来深入了解数据, ...
随机推荐
- INFINI Labs 产品更新 | Easysearch 新增 kNN 搜索功能、Console 支持 LDAP 认证登录等
INFINI Labs 产品又更新啦~,包括 Easysearch v1.3.0.Gateway v1.16.0.Console v1.4.0.Agent v0.5.1.本次产品更新了许多实用新特性, ...
- SRE 必备利器:域名 DNS 探测排障工具
问题背景 访问某个 HTTP 域名接口,偶发性超时,原因可能多种多样,比如 DNS 解析问题.网络质量问题.对端服务负载问题等,在客户端没有良好埋点的情况下,排查起来比较费劲,只能挨个方向尝试,这里送 ...
- vs2019安装使用Python3.9教程
现在vs2019只支持到Python3.7,如果要使用3.9,需要自己下载Python3.9的包 步骤: 一.在开始菜单中找到Microsoft Store搜索"Python3.9" ...
- ssh进阶
1.ssh客户端工具 查看参数和帮助方法 ==ssh --help== ==man ssh== 常见参数 windows linux macos 提供的ssh命令,会有些区别,查看帮助后使用即可. l ...
- python 日志写入文件,参数说明及动态判断文件是创建还是追加
import logging import os ''' 格式符 含义 %(levername)s 日志级别名称 %(pathname)s 当前执行程序的路径(即脚本所在的位置) %(filename ...
- 4.4K Star!推荐一款新一代的极简监控系统!轻量高性能!超500个监控指标,颜值高、功能强大!
在信息化快速发展的今天,企业运维面临的挑战日益增多.传统的运维监控系统往往存在功能冗余.性能低下.操作复杂等问题,难以满足现代企业对高效.稳定.智能的运维管理需求. 今天给大家推荐一款新一代极简运维监 ...
- Python中使用MySQL模糊查询的方法
1.方法一:使用pymysql库的方法 当在Python中使用MySQL进行模糊查询时,我们通常会使用pymysql或mysql-connector-python这样的库来连接MySQL数据库并执行查 ...
- 在Linux驱动中使用notifier通知链
在Linux驱动中使用notifier通知链 背景 在驱动分析中经常看到fb_notifier_callback,现在趁有空学习一下. 介绍 linux中的观察者模式是最显然的就是"通知链& ...
- 嵌入式Linux如何设置获取uboot参数
--- title: 嵌入式Linux如何设置获取uboot参数 EntryName: embeded-linux-debug-get-and-set-u-boot-envarg date: 2020 ...
- [FLET] 01 可以拖动的方块
from typing import List import flet from flet import ( Container, Draggable, DragTarget, Page, Row, ...