前天晚上发出一篇质量平平的博文后, 太云学长提出一个建议(其实算是中肯的批评): 用点的大小表示震级的大小. 其实以前也不是没想过这个问题. 只是不怎么懂R中的向量操作, 加上自己比较懒, 所以就 … 昨天没去教室学习(极度堕落啊), 正好宅在寝室里没事, 就画出来玩玩.
我们首先绘制图1, 点的半径大小代表震级的高低. 点的半径越大, 震级越高. (数据附文后)

图1 震级的大小
然后绘制图2, 点的透明度高低代表震源的深度, 点的透明度越靠近完全不透明 (完全不透明的红色为#FF0000FF), 表示震源深度越浅.

图2 震源的深度
继续阅读’小径分岔的花园’
2010年4月14日, 我国青海省玉树藏族自治州发生了破坏性地震. 用R简单地看了一下2010年2到4月青海地区(含西藏/甘肃等地)的地震分布情况.

图1 2010年2月青海地区地震分布
继续阅读’青海地震分布与京津地震传言’
发表于:
2010年02月9日 分类:
数字之美 标签: 3D, Cardioid, heart, love, MATLAB, Visualization, 三维, 可视化, 心形, 心形线, 绘图, 隐函数.
You don’t have to believe in God, but you should believe in The Book.
——P. Erdos
即日启程, 在接下来几天没有网络的日子里, 我深信亲情能够温暖人心. 临行前突然又想写点东西. 标题的前半句出自《圣经》, 后半句与本文有点关系, 似乎还是王小帅一部电影的英文名. 中间还少了一环, 这环就是数学. 大神P.Erdos[1] 不太相信上帝, 但他相信世界上有一本超穷的“天书”(The Book), 那里包含了所有数学定理最简洁、最漂亮、最优雅的证明. 他对一个证明的最高赞誉就是:
It is from The Book!
按照God→Math→Love的逻辑, 爱亦应有自己的数学表述. 有了数学表述自然要可视化一下. 笛卡尔心形线令人心碎的爱情故事不知其真实程度, 不过确实够浪漫的. 不过这隐函数都学完了还画心形线就太out了, 今天咱也浪漫一把, 画个隐函数方程生成的三维心. 不知此图能否有幸入选The Book的图形部分?

图1: MATLAB生成三维心形
原始方程:

自己画一个?
1
2
3
4
5
| [x,y,z]=meshgrid(linspace(-3,3,120));
f=(x.^2+(9*y.^2)./4+z.^2-1).^3-((9*y.^2).*(z.^3))./80-(x.^2).*(z.^3);
p=patch(isosurface(x,y,z,f,0));
set(p, 'FaceColor', 'r', 'EdgeColor', 'n');
daspect([1 1 1]);view(3);camlight('right');lighting phong |
[1] P.Erdos (1913-1996), 当代最伟大的数学家之一, 他一生中同485位合作者发表了1475篇数学论文. Erdos的研究领域主要是数论和组合数学, 但他的论文中涵盖的学科有逼近论、初等几何、集合论、概率论、数理逻辑、格与序代数结构、线性代数、群论、拓扑群、多项式、测度论、单复变函数、差分方程与函数方程、数列、Fourier分析、泛函分析、一般拓扑、代数拓扑、统计、数值分析、计算机科学、信息论等等. 美国数学学会(AMS)的《数学评论》杂志曾把数学划分为约六十个分支, Erdos的论文涉及了约40%.
斯人已逝, 思想长存.
2010年春节前
雪夜哈尔滨
写在前面
RgoogleMaps是SenseNetworks公司的Markus Loecher于2009年5月开始编写的一个R包. 此包的用途是把已有坐标数据作为一个个点自动打到从Google Maps上抓取的卫星地图上,好处是省去了人工计算抓取图片的参数和手动抓取、手动调整、打点的麻烦. 换句话说,现在我们只要在R中准备好经纬度数据再调用几个简单的函数就能画出一张 ( 至少从表面上看 ) 比较漂亮的图了 ( 其实也没这么简单 ).
话说敝人有去GIS选修课上睡过几次,奈何所学未有涉及地理专业,叙述方面难免缺失,只要大家能看懂就好了.
准备工作
下载安装或读入以下R包:
sp
RgoogleMaps
rgdal (若需生成PNG格式图片)
ReadImages(若需生成JPEG格式图片,还要安装 libjpeg)
接着,前往以下网址申请一个Google Maps的API key. 至于API是什么,我想就不用解释了,不知道的童鞋可以去Google上百度一下.
http://code.google.com/apis/maps/signup.html
图1: Google Maps API 申请页面
阅毕许可协议,勾选 I have read and agree with the terms and conditions 即可获得一个Google Maps的API key. 将此API key(一长串的数字字母符号混合物)写入一个文本文档,保存为:
X:\Documents and Settings\你的用户名\My Documents/API.key.txt
继续阅读’从实例看RgoogleMaps包的使用’