使用matplotlib的示例:调整字体-设置刻度、坐标、colormap和colorbar等
matplotlib(11)
Numpy_Scipy(14) 
版权声明:本文为博主原创文章,未经博主允许不得转载。
使用matplotlib的示例:调整字体-设置刻度、坐标、colormap和colorbar等
- # -*- coding: utf-8 -*-
- #**********************************************************
- import os
- import numpy as np
- import wlab #pip install wlab
- import matplotlib
- import matplotlib.cm as cm
- import matplotlib.pyplot as plt
- from matplotlib.ticker import MultipleLocator
- from scipy.interpolate import griddata
- matplotlib.rcParams['xtick.direction'] = 'out'
- matplotlib.rcParams['ytick.direction'] = 'out'
- #**********************************************************
- FreqPLUS=['F06925','F10650','F23800','F18700','F36500','F89000']
- #
- FindPath='/d3/MWRT/R20130805/'
- #**********************************************************
- fig = plt.figure(figsize=(8,6), dpi=72, facecolor="white")
- axes = plt.subplot(111)
- axes.cla()#清空坐标轴内的所有内容
- #指定图形的字体
- font = {'family' : 'serif',
- 'color' : 'darkred',
- 'weight' : 'normal',
- 'size' : 16,
- }
- #**********************************************************
- # 查找目录总文件名中保护F06925,EMS和txt字符的文件
- for fp in FreqPLUS:
- FlagStr=[fp,'EMS','txt']
- FileList=wlab.GetFileList(FindPath,FlagStr)
- #
- LST=[]#地表温度
- EMS=[]#地表发射率
- TBH=[]#水平极化亮温
- TBV=[]#垂直极化亮温
- #
- findex=0
- for fn in FileList:
- findex=findex+1
- if (os.path.isfile(fn)):
- print(str(findex)+'-->'+fn)
- #fn='/d3/MWRT/R20130805/F06925_EMS60.txt'
- data=wlab.dlmread(fn)
- EMS=EMS+list(data[:,1])#地表发射率
- LST=LST+list(data[:,2])#温度
- TBH=TBH+list(data[:,8])#水平亮温
- TBV=TBV+list(data[:,9])#垂直亮温
- #-----------------------------------------------------------
- #生成格点数据,利用griddata插值
- grid_x, grid_y = np.mgrid[275:315:1, 0.60:0.95:0.01]
- grid_z = griddata((LST,EMS), TBH, (grid_x, grid_y), method='cubic')
- #将横纵坐标都映射到(0,1)的范围内
- extent=(0,1,0,1)
- #指定colormap
- cmap = matplotlib.cm.jet
- #设定每个图的colormap和colorbar所表示范围是一样的,即归一化
- norm = matplotlib.colors.Normalize(vmin=160, vmax=300)
- #显示图形,此处没有使用contourf #>>>ctf=plt.contourf(grid_x,grid_y,grid_z)
- gci=plt.imshow(grid_z.T, extent=extent, origin='lower',cmap=cmap, norm=norm)
- #配置一下坐标刻度等
- ax=plt.gca()
- ax.set_xticks(np.linspace(0,1,9))
- ax.set_xticklabels( ('275', '280', '285', '290', '295', '300', '305', '310', '315'))
- ax.set_yticks(np.linspace(0,1,8))
- ax.set_yticklabels( ('0.60', '0.65', '0.70', '0.75', '0.80','0.85','0.90','0.95'))
- #显示colorbar
- cbar = plt.colorbar(gci)
- cbar.set_label('$T_B(K)$',fontdict=font)
- cbar.set_ticks(np.linspace(160,300,8))
- cbar.set_ticklabels( ('160', '180', '200', '220', '240', '260', '280', '300'))
- #设置label
- ax.set_ylabel('Land Surface Emissivity',fontdict=font)
- ax.set_xlabel('Land Surface Temperature(K)',fontdict=font) #陆地地表温度LST
- #设置title
- titleStr='$T_B$ for Freq = '+str(float(fp[1:-1])*0.01)+'GHz'
- plt.title(titleStr)
- figname=fp+'.png'
- plt.savefig(figname)
- plt.clf()#清除图形
- #plt.show()
- print('ALL -> Finished OK')
上面的例子中,每个保存的图,都是用同样的colormap,并且每个图的颜色映射值都是一样的,也就是说第一个图中如果200表示蓝色,那么其他图中的200也表示蓝色。
示例的图形如下:
- 顶
- 2
- 踩
- 2
使用matplotlib的示例:调整字体-设置刻度、坐标、colormap和colorbar等的更多相关文章
- 使用matplotlib的示例:调整字体-设置colormap和colorbar
使用matplotlib的示例:调整字体-设置colormap和colorbar # -*- coding: utf-8 -*- #********************************** ...
- 05. Matplotlib 1 |图表基本元素| 样式参数| 刻度 注释| 子图
1.Matplotlib简介及图表窗口 Matplotlib → 一个python版的matlab绘图接口,以2D为主,支持python.numpy.pandas基本数据结构,运营高效且有较丰富的图表 ...
- Matplotlib 图表的基本参数设置
1.图名,图例,轴标签,轴边界,轴刻度,轴刻度标签 # 图名,图例,轴标签,轴边界,轴刻度,轴刻度标签等 df = pd.DataFrame(np.random.rand(10,2),columns= ...
- (数据科学学习手札100)搞定matplotlib中的字体设置
本文示例文件已上传至我的Github仓库https://github.com/CNFeffery/DataScienceStudyNotes 1 简介 matplotlib作为数据可视化的利器,被广泛 ...
- IDEA或Webstorm设置Ctrl+滚轮调整字体大小
按Ctrl+Shift+A,出现搜索框 输入mouse: 点击打开这个设置:勾选 点击ok,之后就可以通过Ctrl+滚轮 调整字体大小了.
- 用matplotlib绘制带误差的条形图及中英文字体设置
#!/usr/bin/env python3 ## 以下是一个带误差条的条形图的例子,演示了误差条形图的绘制及中英文字体设置 import numpy as np import matplotlib ...
- IDEA设置Ctrl+滚轮调整字体大小
IDEA设置Ctrl+滚轮调整字体大小(转载) 按Ctrl+Shift+A,出现搜索框 输入mouse: 点击打开这个设置:勾选 点击ok,之后就可以通过Ctrl+滚轮 调整字体大小了.
- IDEA设置Ctrl+滚轮调整字体大小(转载)
按Ctrl+Shift+A,出现搜索框 输入mouse: 点击打开这个设置:勾选 点击ok,之后就可以通过Ctrl+滚轮 调整字体大小了. 转载自:http://www.cnblogs.com/LUA ...
- Css调整字体间距
在span div 某些元素中有时候会用到调整字体的间距,设置方法: letter-spacing:15px;
随机推荐
- 测试人员git常用命令
首先要到git官网下载一个gitbash,并安装. https://git-scm.com/ 1. 配置git key $ ssh-keygen -t rsa 按3个回车,密码为空,在目录C:\Use ...
- 在eclipse中使用Github进行单元测试
时间分配是找资料60%,动手实践40%.因为之前一直没怎么好好学习,导致看到使用Gunit进行单元测试的时候感觉像是看到了一行符号一样不知所措,还好现在搜索引擎很强大,找资料学习中间有找到一个现成的傻 ...
- centos 验证mysql的安装
一.验证mysql是否安装 1.whereis mysql:如果安装了mysql就会显示mysql安装的地址 2.which mysql:查看文件的运行地址 3.chkconfig --list my ...
- matlab *与.*的区别
语言用来用去老是容易忘... 还是记下来比较好点.... (1) " * " 即矩阵乘法,两个矩阵必须满足左边矩阵的列数等于右边矩阵的行数,如: A(m,k) * B(k, ...
- sql 触发器回顾
一: 触发器是一种特殊的存储过程﹐它不能被显式地调用﹐而是在往表中插入记录﹑更新记录或者删除记录时被自动地激活.所以触发器可以用来实现对表实施复杂的完整性约束. 二: SQL Server为每个触发器 ...
- js 实现自动调出键盘
在app中,在页面加载完成之后,给输入框添加一个focus,不能自动调出软键盘,可以用以下方式实现: //触发键盘 $("#content").on("touchstar ...
- PHP error_get_last() 函数
error_get_last() 函数返回最后发生的错误 返回了一个关联数组,描述了最后错误的信息,以该错误的 "type". "message"." ...
- 搭建svn服务器小结
最开始是用VisualSVN-Server来搭建服务器的,某一天安装了eset杀毒软件后,发现不能用了,每次打开配置页时报错.Visualsvn server 0x80070005 百度搜索,找到相同 ...
- js中scrollIntoView()的用法
一. 什么是scrollIntoView scrollIntoView是一个与页面(容器)滚动相关的API 二. 如何调用 element.scrollIntoView() 参数默认为true 参数为 ...
- 动态加载CSS,JS文件
var Head = document.getElementsByTagName('head')[0],style = document.createElement('style'); //文件全部加 ...