自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(22)
  • 收藏
  • 关注

原创 png图片属性

为了提高图片的清晰度,需设置savefig的dpi,一般灰度图dpi=300减少画布空白区域,设置figure大小,即画布大小,figure(figsize=(6,6)),然后设置坐标轴的位置,plt.axes([0.1,0.2,8.85,0.85]),四个参数分别为x,y轴起点以及x,y轴的宽度和高度 ...

2018-12-07 05:46:27 1205

原创 利用matplotlib画multiple bar图

需设置相对x坐标的位置ax=plt.subplot(111)x=np.arange(6,10)print xax.bar(x-0.125,rnum,width=0.25,align='center',color='g',alpha=0.5)ax.bar(x+0.125,wnum,width=0.25,align='center',color='r',alpha=0.5)plt.xti...

2018-07-27 04:20:42 1412

原创 用matlibplot绘图时在图中添加数字

如想将画图的变量具体数值填写到相应的格点处,可用以下语句,其中plt.text前两个属性是图形坐标的位置,即x,y对应的值。for (i, j), z in np.ndenumerate(mfre):            if (z > 0):                plt.text(j + 108.5, i + 32.5, '{:0.0f}'.format(z), ha=...

2018-07-26 03:55:45 5302

原创 整型转字符型以0补齐

将整型转为字符型,已知字符串长度,转换时长度不够,以0补齐如:a=3,已转换成‘03’,可用如下函数:str(a).zfill(2)

2018-07-12 03:08:55 2038

原创 直方图bar与x坐标相对位置设置

画直方图时,需将bar放置在坐标轴标值的中间,需要对bins以及x轴标值进行设置,将bin对应的个数及值事先定义好,然后将坐标标值设置为两个bin的中间值,再设计参数align='mid'即可,如:import numpy as npimport osimport matplotlib.pyplot as pltweights=np.ones_like(area)/float(len(area...

2018-07-11 03:26:21 3455

原创 利用已有的list创建以元祖为元素的list或数组

有两个list,a=[1,2,3],b=[4,5,6],zip(a,b)即可变成 [(1,4),(2,5),(3,6)]同时python两个list相加是表示两个list合并计算list是否包含某元素 num=lista.count(c)

2018-07-07 04:52:36 914

原创 掩码地图边界之外的数据

首先需要下载地图数据(https://www.naturalearthdata.com/),获取地图边界,然后将其进行光栅化(rasterize),提取光栅化以后的数据,利用np.ma.array的掩码功能进行掩码。from rasterio import featuresimport numpy as npimport xarray as xrfrom affine import Affi...

2018-07-07 04:34:30 1085

原创 python导入模块被加横线

由于模块已基本被更新为新的版本,如果程序导入的还是老版本,程序就会自动在import的模块上面加横杆,用鼠标放在被导入的模块,会有相应的提示,按照提示重新下载新的模块,并修改import语句即可。如导入 import xray,就会在xray上面添加横线,重新下载新的模块,将导入语句改为 import xarray as xr即可...

2018-07-03 04:20:41 7750

原创 绘制高度和为1的直方图

matplotlib里带的hist直方图工具默认是各个bin的频率,也可设置成normed或density,这是概率密度函数,而不是probability,要想画成各个bin高度和为1,也就是各个bin出现的概率,需要设置weights这个参数,具体如下:import numpy as npimport mathimport matplotlib.pyplot as pltimport oswei...

2018-06-28 04:02:39 598

原创 将包含长短不一lists的多重嵌套list转换成ndarray

          定义多维数组,并赋值为0,,根据多重嵌套的list长度利用len找出来,将最长的list作为数组在这一维的下标,然后再讲list值赋给多维数组,这样就将原来较短的list填充为0           import numpy as py            location=np.zeros([len(paths),len(max(paths,key=lambda x:len...

2018-06-23 04:23:56 2940

原创 三维数组如何输出到文件

二维及其以下数组利用np.savetxt(filename,ndarray,fmt='',delimiter=' ',newline='/n')输出很方便,当数组超过2维,需要将数组进行切片,变成二维数组才可以输出,如:import numpy as npif not path is None:              with file(os.path.join(outpath,ctime+'...

2018-06-23 04:10:12 7737

原创 python函数调用

python函数要先定义,然后才能调用,也就是说在python代码中要先将函数定义,然后才能是主程序。

2018-06-22 04:18:38 1771

原创 python函数中return的作用

python函数中return的作用就是讲函数执行结果返回给调用程序,然后可以用来保存进行再计算等如:>>> def add(a,b):...            print a+b>>> add(1,5)6>>> n=add(1,5)6>>> print nNone>>> def add(a,b)

2018-06-22 03:38:22 15414

原创 python数组转置

调用fortran子程序返回一个变量参与python计算时,由于python存储数据的顺序为先行后列,而fortran则为先列后行,因此需要转置(np.transpose)fortran计算得到的结果进行计算。但仅仅用于绘制图形,则不需要转置。import numpy as npfrontregion = np.zeros((41, 41))area0=frontarea.ffluent(xy...

2018-06-22 01:11:04 3921

原创 用不同颜色绘制同一线条

from matplotlib.collections import LineCollectionfrom matplotlib.colors import ListedColormap,BoundaryNormcmap=ListedColormap(['r','b','m']) #设置不同颜色norm=BoundaryNorm([0.1,1.1,2.1,2.9],cm...

2018-06-22 01:04:19 4702 1

原创 matlibplot中获取图形中的某条等值线

from matplotlib.collections import LineCollectionimport numpy as npdef get_contour_verts(cn,vf,fEPT,tmep0)contours = []# for each contour linefrontregion = np.zeros((41, 41))for cc in cn.collections: ...

2018-06-21 04:10:44 1139

原创 list转换为ndarray

list一般为一维,但有可能是嵌套,如 x=[[1,3],[3,4]],利用np.array可将list转换成多维数组,如np.array(x)之后就会将x变成2*2的数组

2018-06-20 23:59:38 32988 1

原创 规则网格插值到散点

import numpy as npfrom scipy.interpolate import griddatapp=np.array((x.flatten(),y.flatten())).TValues=vf.flatten()Z0=griddata(pp,Values,np.array(xy))   x,y,vf为ndarray,xy为二维嵌套list,griddata默认为线性插值,还可选取...

2018-06-20 23:56:27 5883 1

原创 python批量下载Cmorph降水资料

一个简单的批量下载网站数据的脚本,主要用到urllib2等库。参考资料来自:https://wulc.me/2015/12/02/python%E6%89%B9%E9%87%8F%E4%B8%8B%E8%BD%BD%E6%96%87%E4%BB%B6/#!/usr/bin/python#-*- coding: utf-8 -*-import urllib2import osdef ge...

2018-06-05 04:01:17 2438

原创 pcolormesh将特定值填充成白色

只需要将特定值设置成缺测值,画图的时候系统自动用白色表示import mapplotlib.pyplot as plt   import  numpy as npmask1 = smask <= 0msmask = np.ma.array(smask, mask=mask1)ct = plt.pcolormesh(lons, lats, msmask)plt.colorbar(ct)...

2018-05-22 03:23:53 3213 1

原创 在win10环境下python调用fortran子程序

1.python调用fortran的接口为f2py,它是numpy自带的模块,在windows下只有分f2py.py,没有f2py.exe;2.在fortran所在的目录下f2py.py -m test -c test.f90,即可生成fortran子程序相应的python文件(.pyd),同时生成一个unkown文件夹,改文件夹下有相应的dll文件,将pyd和dll文件放在一块,目前只能在c盘下...

2018-05-03 04:00:53 4831 3

翻译 利用python下载ECMWF数据

1.注册ECMWF数据下载账号;2.下载 ECMWF web-API client version in python,下载网址为https://software.ecmwf.int/wiki/display/WEBAPI/Web-API+Downloads,然后pip install 下载的包即可3.登录账号获取下载数据的key,网址https://api.ecmwf.int/v1/key/,然...

2018-05-01 11:51:27 6835 5

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除