上一篇:数据可视化Matplotlib-上
import matplotlib.pyplot as mp
提示:为了避免文章过长,代码全托管到码云,直接点超链接就可以看到和下载。
10、刻度定位器 ax = mp.gca() ax.xaxis.set_major_locator(刻度定位器) # 主刻度 ax.xaxis.set_minor_locator(刻度定位器) # 次刻度
常用 刻度定位器 mp.NullLocator:空定位器mp.MaxNLocator(nbin=最多画几个刻度, steps=刻度间距可选列表): 最大值定位器mp.FixedLocator(locs=刻度列表):固定点定位器mp.AutoLocator():自动定位器mp.IndexLocator(offset=0.5,base=1.5):offset(刻度起始值),base(步长)mp.MultipleLocator(刻度间隔):多点定位器mp.LinearLocator(numticks=21):numticks(刻度个数)mp.LogLocator(base=2,subs=[1.0]):对数定位器示例代码:locator.py 效果图:
11、区域填充 mp.fill_between(水平坐标,起点垂直坐标,终点垂直坐标,填充条件,color=颜色,alpha=透明度)
示例代码:fill.py 效果图:
12、条形图 mp.bar(水平坐标数组,高度数组,宽度,color=颜色,label=图例标签,alpha=透明度)
宽度:0-1的数,表示间隔示例代码:bar.py 效果图: 13、饼图 mp.pie(值数组,间隙数组,标签数组,颜色数组,格式,shadow=False)
shadow:是否有阴影startangle:起始角度格式:表示扇形占比的格式化显示,比如‘%d%%’表示以20%这种表示,也可以以小数‘0.%d’则是以0.20显示示例代码:pie.py 效果图:
14、等高线图 mp.contour(点阵X坐标,点阵Y坐标,Z坐标,梯度数,colors=颜色,linewidths=线宽) mp.contourf(点阵X坐标,点阵Y坐标,Z坐标,梯度数,cmap=颜色映射)
梯度数:决定等高线图的密集性cmap:部分取值如下 autumn 从红色平滑变化到橙色,然后到黄色。bone 具有较高的蓝色成分的灰度色图。该色图用于对灰度图添加电子的视图。cool 包含青绿色和品红色的阴影色。从青绿色平滑变化到品红色。copper 从黑色平滑过渡到亮铜色。flag 包含红、白、绿和黑色。gray 返回线性灰度色图。hot 从黑平滑过度到红、橙色和黄色的背景色,然后到白色。hsv 从红,变化到黄、绿、青绿、品红,返回到红。jet 从蓝到红,中间经过青绿、黄和橙色。它是hsv色图的一个变异。pink 柔和的桃红色,它提供了灰度图的深褐色调着色。prism 重复这六种颜色:红、橙、黄、绿、蓝和紫色。spring 包含品红和黄的阴影颜色。summer 包含绿和黄的阴影颜色。winter 包含蓝和绿的阴影色。更多取值请参考官网:https://matplotlib.org/examples/color/colormaps_reference.html
补充: 点阵X坐标,点阵Y坐标:都为二维数组,可以由np.meshgrid(x一维数组,y一维数组)生成 例如:x = [1 3 4] y = [2 4 5],那么x和y在平面坐标系上能有9个交点,而点阵X坐标则是这9个坐标的x坐标矩阵 9个点的坐标: (1, 2), (3, 2), (4,2) (1, 4), (3, 4), (4, 4) (1, 5), (3, 5), (4, 5) 点阵X坐标: [[1, 3, 4], [1, 3, 4], [1, 3, 4]] 点阵Y坐标: [[2, 2, 2], [3, 3, 3], [4, 4, 4]] 而np.meshgrid(x, y)得到的就是上面两个矩阵数组,也可以不使用np.meshgrid(x, y),而是使用X = np.tite(x, (x.size, 1)),Y = np.tite(y, (y.size, 1)).T 注意:坐标并不需要有顺序,只要X,Y一一对应就行 所以 X [[1, 1, 1], [2, 2, 2], [4, 4, 4]] Y [[2, 3, 4], [2, 3, 4], [2, 3, 4]] 这个和上面没什么区别
示例代码:contour.py 效果图(可以一个窗口画一个,效果比这个好多了):
15、热力图 mp.imshow(矩阵,cmap=颜色映射,origin=纵轴方向)
origin:默认y轴坐标从上至下增大的,不符合坐标系,所以经常设置值为’low’示例代码:imshow.py 效果图(是不是和等高线有点像,因为用的是同样的数据): 简单应用: 将彩色图片显示为黑白图片,当然也可以变成其他颜色映射。
示例代码:cmap.py 原图片: 效果图(如果每个窗口显示一张图,效果更好):
说明: 代码会提示一个警告,大概意思是imread已经被弃用,将在1.2.0版本移除,请使用imageio.imread,不理他,既然能用试试效果就行。
下一篇:数据可视化Matplotlib-下
原文博客:https://blog.csdn.net/Qwertyuiop2016/ 现在这个是小号,给爬虫用的
欢迎关注我的微信公众号,分享我的学习经验和一些觉得不错的资源。如果有问题的话,也可以在微信公众号联系我。