《Python数据可视化之matplotlib实践》 源码 第一篇 入门 第四章
图 4.1
import matplotlib
import matplotlib.pyplot as plt
import numpy as np # 设置matplotlib正常显示中文和负号
matplotlib.rcParams['font.sans-serif']=['SimHei'] # 用黑体显示中文
matplotlib.rcParams['axes.unicode_minus']=False # 正常显示负号 x=np.linspace(-2*np.pi, 2*np.pi, 200)
y=np.sin(x)
y1=np.cos(x) plt.plot(x,y, label=r"$\sin(x)$")
plt.plot(x,y1,label=r"$\cos(x)$") plt.legend(loc="lower left") plt.title("正弦函数和余弦函数的折线图")
plt.show()
--------------------------------------------------------------------------
图 4.2
import matplotlib
import matplotlib.pyplot as plt
import numpy as np # 设置matplotlib正常显示中文和负号
matplotlib.rcParams['font.sans-serif']=['SimHei'] # 用黑体显示中文
matplotlib.rcParams['axes.unicode_minus']=False # 正常显示负号 x=np.arange(0, 2.1, 0.1)
y=np.power(x, 3)
y1=np.power(x,2)
y2=np.power(x, 1) plt.plot(x, y, ls='-', lw=2, label='$x^{3}$')
plt.plot(x, y1, ls='-', lw=2, label='$x^{2}$', c='r')
plt.plot(x, y2, ls='-', lw=2, label='$x^{1}$', c='y') plt.legend(loc='upper left', bbox_to_anchor=(0.05, 0.95), ncol=3,
title="power function", shadow=True, fancybox=True) plt.show()
--------------------------------------------------------------------------
图 4.3
import matplotlib
import matplotlib.pyplot as plt
import numpy as np # 设置matplotlib正常显示中文和负号
matplotlib.rcParams['font.sans-serif']=['SimHei'] # 用黑体显示中文
matplotlib.rcParams['axes.unicode_minus']=False # 正常显示负号 x=np.linspace(-2, 2, 1000)
y=np.exp(x) plt.plot(x, y, ls="-", lw=2, color='g') plt.title("center demo") plt.title("Left Demo", loc="left", fontdict={"size":"xx-large","color":"r",
"family":"Times New Roman"}) plt.title("right demo", loc="right", family="Comic Sans MS", size=20, style="oblique",
color="c") plt.show()
--------------------------------------------------------------------------
图 4.4
import matplotlib
import matplotlib.pyplot as plt
import numpy as np # 设置matplotlib正常显示中文和负号
matplotlib.rcParams['font.sans-serif']=['SimHei'] # 用黑体显示中文
matplotlib.rcParams['axes.unicode_minus']=False # 正常显示负号 elements=["面粉", "砂糖", "奶油", "草莓酱", "坚果"] weight=[40, 15, 20, 10, 15] colors=["#1b9e77", "#d95f02", "#7570b3", "#66a61e", "#e6ab02"] wedges, texts, autotexts=plt.pie(weight, autopct="%3.1f%%", textprops=dict(color="w"),
colors=colors) plt.legend(wedges, elements, fontsize=12, title="配料表", loc="center left",
bbox_to_anchor=(0.91, 0, 0.3, 1)) #调整百分比字体类型和大小
plt.setp(autotexts, size=15, weight="bold") #调整标签字体类型和大小
# plt.setp(texts, size=32) plt.title("果酱面包配料比例表") plt.show()
--------------------------------------------------------------------------
图 4.5
import matplotlib
import matplotlib.pyplot as plt
import numpy as np # 设置matplotlib正常显示中文和负号
matplotlib.rcParams['font.sans-serif']=['SimHei'] # 用黑体显示中文
matplotlib.rcParams['axes.unicode_minus']=False # 正常显示负号 x=np.linspace(-2*np.pi, 2*np.pi, 200)
y=np.sin(x) plt.subplot(211)
plt.plot(x, y) plt.subplot(212)
plt.xlim(-2*np.pi, 2*np.pi)
plt.xticks(np.pi*np.arange(-4, 5)/2,
[r"$-2\pi$", r"$-3\pi/2$", r"$-2\pi$", r"$-\pi$", r"$0$",
r"$\pi/2$", r"$\pi$", r"$3\pi/2$", r"$2\pi$", ])
plt.plot(x, y) plt.show()
--------------------------------------------------------------------------
图 4.6
import matplotlib
import matplotlib.pyplot as plt
import numpy as np # 设置matplotlib正常显示中文和负号
matplotlib.rcParams['font.sans-serif']=['SimHei'] # 用黑体显示中文
matplotlib.rcParams['axes.unicode_minus']=False # 正常显示负号 time=np.arange(1, 11, 0.5)
machinePower=np.power(time, 2)+0.7 plt.plot(time, machinePower, linestyle="-", linewidth=2, color="r") #逆序设置坐标轴刻度标签
plt.xlim(10, 1) plt.xlabel("使用年限")
plt.ylabel("机器功率") plt.title("机器损耗曲线") plt.grid(ls=":", lw=1, color="gray", alpha=0.5) plt.show()
--------------------------------------------------------------------------
图 4.7
import matplotlib
import matplotlib.pyplot as plt
import numpy as np # 设置matplotlib正常显示中文和负号
matplotlib.rcParams['font.sans-serif']=['SimHei'] # 用黑体显示中文
matplotlib.rcParams['axes.unicode_minus']=False # 正常显示负号 labels=["A难度水平", "B难度水平", "C难度水平", "D难度水平"] students=[0.35, 0.15, 0.20, 0.30] explode=(0.1, 0.1, 0.1, 0.1) colors=["#377eb8", "#e41a1c", "#4daf4a", "#984ea3"] plt.pie(students, explode=explode, labels=labels, autopct="%1.1f%%", startangle=45,
shadow=True, colors=colors) colLabels=["A难度水平", "B难度水平", "C难度水平", "D难度水平"]
rowLabels=["学生选择试卷人数"] studentValues=[[350, 150, 200, 300]]
colColors=["#377eb8", "#e41a1c", "#4daf4a", "#984ea3"] plt.table(cellText=studentValues, cellLoc="center", colWidths=[0.25]*4,
colLabels=colLabels, colColours=colColors, rowLabels=rowLabels,
rowLoc="center", colLoc="center", loc="bottom", rowColours='r') plt.title("选择不同难度测试试卷的学生占比")
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和 ...
- STL源码剖析读书笔记--第四章--序列式容器
1.什么是序列式容器?什么是关联式容器? 书上给出的解释是,序列式容器中的元素是可序的(可理解为可以按序索引,不管这个索引是像数组一样的随机索引,还是像链表一样的顺序索引),但是元素值在索引顺序的方向 ...
- 重温《STL源码剖析》笔记 第四章
源码之前,了无秘密 ——侯杰 序列式容器 关联式容器 array(build in) RB-tree vector set heap map priority-queue multiset li ...
- 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)
随机推荐
- 命运2 Cross Save
epic 上免费领的命运2,进不去,界面提示要扫码. 解决方法: 1.手机或电脑浏览器进入:https://www.bungie.net/. 2.使用epic 账号登录 ,然后设置一个邮箱,邮箱收到验 ...
- 【干货分享】.NET人脸识别解决方案
前言 前段时间有同学在DotNetGuide技术社区交流群提问:.NET做人脸识别功能有什么好的解决方案推荐的吗?今天大姚给大家推荐2款.NET开源.免费.跨平台.使用简单的人脸识别库,希望可以帮助到 ...
- nexus服务启动/关闭命令
nexus服务启动/关闭命令history | grep nexus # 查看服务器上面的历史请求命令ps -ef | grep nexus 查看进程及目录find / -name 'nexus' # ...
- azure 代码管理器网址
visual studio 团队资源管理器 azure代码管理网页 记录一下 https://dev.azure.com
- Failed to connect to codeup.aliyun.com port 443 after 21017 ms: Couldn't connect to server Git
Git拉取出现这个错误 Failed to connect to codeup.aliyun.com port 443 after 21017 ms: Couldn't connect to serv ...
- vue中手写table的升降序
有些时候,我们总是无可避免的需要自己去手撸一些东西,因为需求总是在不断的变化.例如,最开始的需求,我们只是在首页展示一个数据列表,此时,我们可能直接就自己手写了一个table,后来,突然增加了一个需求 ...
- spring与设计模式之三代理模式
部分内容引用: https://blog.csdn.net/shulianghan/article/details/119798155 一.定义 1.1定义 对于现实生活中的代理,大家非常好理解.我们 ...
- python基础-元组tuple( )
元组的定义和操作 元组的特性: 元素数量 支持多个 元素类型 任意 下标索引 支持 重复元素 支持 可修改性 不支持 数据有序 是 使用场景 不可修改.可重复的 一批数据记录场景 # 定义元组 ...
- CF1800E 题解
发现一个神奇的事实:显然不限制交换次数可以实现交换任意字符. 因此可以直接判断字符集是否相等. 在考虑哪些地方可以交换. 根据题意可知可以交换的区间为 \([1,n - k]\) 以及 \([k + ...
- n阶前缀和 の 拆解
二阶 \[\sum_{i=l}^{r} \sum^{i}_{j=1} a_j \] \[=\sum_{i=l}^{r} (r-i+1) a_i \] \[=(r+1)\sum_{i=l}^{r} a_ ...