<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Data</title>
	<atom:link href="http://yaohua.cos.name/cn/feed/" rel="self" type="application/rss+xml" />
	<link>http://yaohua.cos.name/cn</link>
	<description>Data is beautiful!</description>
	<lastBuildDate>Wed, 22 Sep 2010 10:22:03 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0.1</generator>
		<item>
		<title>PPT与老师</title>
		<link>http://yaohua.cos.name/cn/2010/09/ppt%e4%b8%8e%e8%80%81%e5%b8%88/?utm_source=rss&amp;utm_medium=rss&amp;utm_campaign=ppt%25e4%25b8%258e%25e8%2580%2581%25e5%25b8%2588</link>
		<comments>http://yaohua.cos.name/cn/2010/09/ppt%e4%b8%8e%e8%80%81%e5%b8%88/#comments</comments>
		<pubDate>Tue, 21 Sep 2010 16:43:22 +0000</pubDate>
		<dc:creator>tangyaohua</dc:creator>
				<category><![CDATA[未分类]]></category>

		<guid isPermaLink="false">http://yaohua.cos.name/cn/?p=146</guid>
		<description><![CDATA[来中科院有20来天了，自己的课，旁听的课，上了不少。总结出来老师大致可以根据他使用的PPT的情况排个高低。 一流老师基本不用课件，少数带手稿，站在前面就开始讲，前因后果，各种典故，各种类比，透彻见底，并且时不时提出各种书本上没有的问题，鼓励学生思考、想象、回答，台下两百多号人听的目不转睛。中科院见到几个，有个老师讲课，经常电脑自动屏保了，基本不用课件。中南大学教过我的老师只有原来教物理的一个老师达到水准。 二流老师需要课件或者手稿，课件或手稿只是辅助，老师会按照课件或手稿的流程往下讲，但是不局限于课件，会发散讲很多课件上没有的东西，能讲解比较清楚，难讲的地方就～～，台下听的有点费力。中科院比较多，中南数学基础课的老师都不错。 三流老师把所有东西弄到课件上，或者直接拿课本的电子版讲，从头念到尾，偶尔讲别的东西都是自己生活中的破事拿来娱乐大家。坐在前面一个手摁着鼠标点啊点。大家听的也蛮happy，没有挑战性，反正下课自己看ppt。中科院有个刚刚得了全国杰出青年的老师也是这号人。中南大学统计专业的老师，呃，都是这号人。 不入流的老师，PPT都懒得做，拿着课本（大家人手一本），拿个那啥的放映机，投影到前面黑板上，照着书本念，带着大家识字，老师你辛苦了。完了拿着书在黑板上抄作业题目，叫学生跟着抄，一节课抄完四五个题目等着下课。信他的邪。中南就有这样的极品。 三流和不入流的课基本就不去听了。每次上那个杰青老师的课，要么去旁听别的课，要么去听各种讲座，还好讲座蛮多。]]></description>
			<content:encoded><![CDATA[<p>来中科院有20来天了，自己的课，旁听的课，上了不少。总结出来老师大致可以根据他使用的PPT的情况排个高低。</p>
<p>一流老师基本不用课件，少数带手稿，站在前面就开始讲，前因后果，各种典故，各种类比，透彻见底，并且时不时提出各种书本上没有的问题，鼓励学生思考、想象、回答，台下两百多号人听的目不转睛。中科院见到几个，有个老师讲课，经常电脑自动屏保了，基本不用课件。中南大学教过我的老师只有原来教物理的一个老师达到水准。</p>
<p>二流老师需要课件或者手稿，课件或手稿只是辅助，老师会按照课件或手稿的流程往下讲，但是不局限于课件，会发散讲很多课件上没有的东西，能讲解比较清楚，难讲的地方就～～，台下听的有点费力。中科院比较多，中南数学基础课的老师都不错。</p>
<p>三流老师把所有东西弄到课件上，或者直接拿课本的电子版讲，从头念到尾，偶尔讲别的东西都是自己生活中的破事拿来娱乐大家。坐在前面一个手摁着鼠标点啊点。大家听的也蛮happy，没有挑战性，反正下课自己看ppt。中科院有个刚刚得了全国杰出青年的老师也是这号人。中南大学统计专业的老师，呃，都是这号人。</p>
<p>不入流的老师，PPT都懒得做，拿着课本（大家人手一本），拿个那啥的放映机，投影到前面黑板上，照着书本念，带着大家识字，老师你辛苦了。完了拿着书在黑板上抄作业题目，叫学生跟着抄，一节课抄完四五个题目等着下课。信他的邪。中南就有这样的极品。</p>
<p>三流和不入流的课基本就不去听了。每次上那个杰青老师的课，要么去旁听别的课，要么去听各种讲座，还好讲座蛮多。</p>
]]></content:encoded>
			<wfw:commentRss>http://yaohua.cos.name/cn/2010/09/ppt%e4%b8%8e%e8%80%81%e5%b8%88/feed/</wfw:commentRss>
		<slash:comments>33</slash:comments>
		</item>
		<item>
		<title>Processing Introduction</title>
		<link>http://yaohua.cos.name/cn/2010/09/processing-introduction/?utm_source=rss&amp;utm_medium=rss&amp;utm_campaign=processing-introduction</link>
		<comments>http://yaohua.cos.name/cn/2010/09/processing-introduction/#comments</comments>
		<pubDate>Tue, 07 Sep 2010 13:43:52 +0000</pubDate>
		<dc:creator>tangyaohua</dc:creator>
				<category><![CDATA[未分类]]></category>

		<guid isPermaLink="false">http://yaohua.cos.name/cn/?p=111</guid>
		<description><![CDATA[Processing 是基于java的一门作图语言，主要初衷是为艺术家设计的，但是之后在可视化领域得到了很大的发展，许多项目都基于Processing. 当初知道processing很偶然，大四保完研究生后，一直无事，到下学期的时候毕业论文导师帮我选好题后，让我去找高维数据降维处理的资料，然后就去图书馆闲逛，在计算机书籍附近发现了一本《可视化数据》，拿起来看了看，初看之后就爱不释手，遂借出回去研究，感觉very powerful。之前一直用SAS作图，那叫一个丑（SAS 9.2 有所改善），而且可控制区域很少。 Processing 给我最大感触有三点，第一是完全的对图像控制，精确到每一个像素；第二是人机交互，之前用SAS或其他软件作图，作出来的都是死图，用Processing之后，可以通过鼠标和键盘的输入控制图片。第三是Processing语法的简单也出人意料，对于不是计算机专业的人来说，繁琐的内存管理，类继承派生，多态性，虚函数等都不用搭理，只是按照简单的类的语法建立类，然后使用这些类的对象。 Processing的运行机制很简单，Processing的主体是一个void srtup() 函数和一个void draw() 函数。void setup()设置包括界面大小，背景，颜色模式之类的全局环境变量，只运行一遍。void draw() 函数则一遍一遍的重复运行，作出一帧一帧的图，有一个参数frameRate()控制每秒程序运行多少遍，每运行一遍程序，就会把程序要求的图像在规定的屏幕区间（size()）上显示一遍，然后下一次运行的时候刷新一遍。这样的机制跟电影很像，最终使得动态图像看起来是连贯一致的，当然也可以控制frameRate()使得图像一帧一帧的慢慢动来观察细节。 另外Processing是面向对象的，所以当想控制图像的时候并不像PS那样麻烦，只要写一个主体的类，然后建立一堆对象，这些对象可以是一个array的元素，这样对这群对象的控制就成了对array的控制，非常方便。另外，还可以生产这个主体类的派生类，然后生成派生类的对象。这一切使得程序代码可以很简单，面向对象的编程确实强大。 另外值得一提的是，Processing提供RGB和HSB两种colorMode()以及透明度的设置，所以作出来的图非常优雅美观。无图无真相。 java applet iframe 该图比较慢，勿在图片上点击。慢慢看，艺术品。]]></description>
			<content:encoded><![CDATA[<p>Processing 是基于java的一门作图语言，主要初衷是为艺术家设计的，但是之后在可视化领域得到了很大的发展，<a href="http://processing.org/exhibition/">许多项目都基于Processing</a>.</p>
<p>当初知道processing很偶然，大四保完研究生后，一直无事，到下学期的时候毕业论文导师帮我选好题后，让我去找高维数据降维处理的资料，然后就去图书馆闲逛，在计算机书籍附近发现了一本《可视化数据》，拿起来看了看，初看之后就爱不释手，遂借出回去研究，感觉very powerful。之前一直用SAS作图，那叫一个丑（SAS 9.2 有所改善），而且可控制区域很少。</p>
<p>Processing 给我最大感触有三点，第一是完全的对图像控制，精确到每一个像素；第二是人机交互，之前用SAS或其他软件作图，作出来的都是死图，用Processing之后，可以通过鼠标和键盘的输入控制图片。第三是Processing语法的简单也出人意料，对于不是计算机专业的人来说，繁琐的内存管理，类继承派生，多态性，虚函数等都不用搭理，只是按照简单的类的语法建立类，然后使用这些类的对象。</p>
<p>Processing的运行机制很简单，Processing的主体是一个void srtup() 函数和一个void draw() 函数。void setup()设置包括界面大小，背景，颜色模式之类的全局环境变量，只运行一遍。void draw() 函数则一遍一遍的重复运行，作出一帧一帧的图，有一个参数frameRate()控制每秒程序运行多少遍，每运行一遍程序，就会把程序要求的图像在规定的屏幕区间（size()）上显示一遍，然后下一次运行的时候刷新一遍。这样的机制跟电影很像，最终使得动态图像看起来是连贯一致的，当然也可以控制frameRate()使得图像一帧一帧的慢慢动来观察细节。</p>
<p>另外Processing是面向对象的，所以当想控制图像的时候并不像PS那样麻烦，只要写一个主体的类，然后建立一堆对象，这些对象可以是一个array的元素，这样对这群对象的控制就成了对array的控制，非常方便。另外，还可以生产这个主体类的派生类，然后生成派生类的对象。这一切使得程序代码可以很简单，面向对象的编程确实强大。</p>
<p>另外值得一提的是，Processing提供RGB和HSB两种colorMode()以及透明度的设置，所以作出来的图非常优雅美观。无图无真相。</p>
<div style="overflow:hidden; position:relative; bottom:0px; width:720px; height:720px; margin-left:0px;">
<iframe id="appBox" scrolling="no" frameborder="0"  width="700" height="730" style="overflow:visible; position:relative; top:0px; " src="http://www.openprocessing.org/visuals/iframe.php?visualID=6747" ><br />
java applet iframe<br />
</iframe>
</div>
<p>该图比较慢，勿在图片上点击。慢慢看，艺术品。</p>
<div style="overflow:hidden; position:relative; bottom:0px; width:620px; height:700px; margin-left:0px;">
<iframe id="appBox" scrolling="no" frameborder="0"  width="600" height=720" style="overflow:visible; position:relative; top:0px; " src="http://www.openprocessing.org/visuals/iframe.php?visualID=11192" ><br />
java applet iframe<br />
</iframe>
</div>
<p>在图片上点击，将会生成。。。。<br />
按空格键更换背景。</p>
<div style="overflow:hidden; position:relative; bottom:0px; width:700px; height:600px; margin-left:0px;">
<iframe id="appBox" scrolling="no" frameborder="0"  width="700" height="600" style="overflow:visible; position:relative; top:15px; " src="http://www.openprocessing.org/visuals/iframe.php?visualID=11104" ><br />
java applet iframe<br />
</iframe>
</div>
<p>感兴趣的可以去 openprocessing.org查看全世界各地的童鞋的杰作.</p>
<p>初学之后,用Processing模拟了贪吃蛇的游戏，作了些简单的图自娱自乐，尔后本科毕业论文就全依仗可爱地Processing了。</p>
<p>在<a href="http://www.creativeapplications.net/category/processing/">creativeapplications.net</a>上还有不好基于Processing的创新应用。</p>
<p>初学者推荐MIT.Press.Processing.A.Programming.Handbook.for.Visual.Designers.and.Artists.Sep.2007<br />
至于另一本书OReilly.Visualizing.Data.Jan.2008可以作培养兴趣用。<br />
Learning Processing有点扯淡。</p>
]]></content:encoded>
			<wfw:commentRss>http://yaohua.cos.name/cn/2010/09/processing-introduction/feed/</wfw:commentRss>
		<slash:comments>27</slash:comments>
		</item>
		<item>
		<title>CALL SYMPUT VS. CALL SYMPUTX</title>
		<link>http://yaohua.cos.name/cn/2010/09/call-symput-vs-call-symputx/?utm_source=rss&amp;utm_medium=rss&amp;utm_campaign=call-symput-vs-call-symputx</link>
		<comments>http://yaohua.cos.name/cn/2010/09/call-symput-vs-call-symputx/#comments</comments>
		<pubDate>Sat, 04 Sep 2010 15:01:37 +0000</pubDate>
		<dc:creator>tangyaohua</dc:creator>
				<category><![CDATA[SAS]]></category>
		<category><![CDATA[call symput]]></category>
		<category><![CDATA[call symputx]]></category>
		<category><![CDATA[sas]]></category>

		<guid isPermaLink="false">http://yaohua.cos.name/cn/?p=104</guid>
		<description><![CDATA[使用SAS macro的朋友都知道 call symput，这是个非常有用的东东，在data step和macro之间建立了一个接口。 大家用的最多，接触最早的是call symput，其实SAS还提供了它的一个兄弟，更强大的call symputx。 The four benefits of CALL SYMPUTX are: 1.) CALL SYMPUTX does not write a note to the SAS log when the second argument is numeric. CALL SYMPUT, however, writes a note to the log stating that numeric values were converted to character values. 2.) CALL SYMPUTX uses [...]]]></description>
			<content:encoded><![CDATA[<p>使用SAS macro的朋友都知道 call symput，这是个非常有用的东东，在data step和macro之间建立了一个接口。<br />
大家用的最多，接触最早的是call symput，其实SAS还提供了它的一个兄弟，更强大的call symputx。</p>
<p>The four benefits of CALL SYMPUTX are:<br />
1.) CALL SYMPUTX does not write a note to the SAS log when the second argument is numeric. CALL SYMPUT, however, writes a note to the log stating that numeric values were converted to character values.<br />
2.) CALL SYMPUTX uses a field width of up to 32 characters when it converts a numeric second argument to a character value. CALL SYMPUT uses a field width of up to 12 characters.<br />
3.) CALL SYMPUTX left-justifies both arguments and trims trailing blanks.CALL SYMPUT does not left-justify the arguments, and trims trailing blanks from the first argument only. Leading blanks in the value of name cause an error.<br />
4.) CALL SYMPUTX enables you to specify the symbol table in which to store the macro variable, whereas CALL SYMPUT does not. This is accomplished by an optional third argument to the SYMPUTX function.</p>
]]></content:encoded>
			<wfw:commentRss>http://yaohua.cos.name/cn/2010/09/call-symput-vs-call-symputx/feed/</wfw:commentRss>
		<slash:comments>35</slash:comments>
		</item>
		<item>
		<title>Milestones in the History of Thematic Cartography, Statistical Graphics and Data Visualization</title>
		<link>http://yaohua.cos.name/cn/2010/09/milestones-in-the-history-of-thematic-cartography-statistical-graphics-and-data-visualization/?utm_source=rss&amp;utm_medium=rss&amp;utm_campaign=milestones-in-the-history-of-thematic-cartography-statistical-graphics-and-data-visualization</link>
		<comments>http://yaohua.cos.name/cn/2010/09/milestones-in-the-history-of-thematic-cartography-statistical-graphics-and-data-visualization/#comments</comments>
		<pubDate>Fri, 03 Sep 2010 15:54:29 +0000</pubDate>
		<dc:creator>tangyaohua</dc:creator>
				<category><![CDATA[Visualization]]></category>
		<category><![CDATA[Data]]></category>
		<category><![CDATA[Statistical Graphics]]></category>
		<category><![CDATA[Thematic Cartography]]></category>

		<guid isPermaLink="false">http://yaohua.cos.name/cn/?p=45</guid>
		<description><![CDATA[加拿大多伦多York University的Michael Friendly和他的合作者建立了可视化研究史上的各大事件的数据库，并将其中一些事件选为可视化历史上的”里程碑“，然后运用时间轴的方式将这些里程碑可视化出来。 页面截图如下： 具体可以查看官网：http://datavis.ca/milestones/ 在时间轴上，摁住鼠标左键左右拖动，可以变更视窗的时间段。 鼠标单击某个“里程碑”，可以显示该里程碑更详细的信息和他所属类别。]]></description>
			<content:encoded><![CDATA[<p>加拿大多伦多York University的Michael Friendly和他的合作者建立了可视化研究史上的各大事件的数据库，并将其中一些事件选为可视化历史上的”里程碑“，然后运用时间轴的方式将这些里程碑可视化出来。<br />
页面截图如下：<br />
<a href="http://yaohua.cos.name/cn/2010/09/milestones-in-the-history-of-thematic-cartography-statistical-graphics-and-data-visualization/%e9%87%8c%e7%a8%8b%e7%a2%91/" rel="attachment wp-att-88"><img src="http://yaohua.cos.name/cn/wp-content/uploads/2010/09/里程碑.jpg" alt="" title="里程碑" width="900" height="454" class="alignnone size-medium wp-image-88" /></a></p>
<p>具体可以查看官网：<em><a href="http://datavis.ca/milestones/">http://datavis.ca/milestones/</a></em></p>
<p>在时间轴上，摁住鼠标左键左右拖动，可以变更视窗的时间段。</p>
<p>鼠标单击某个“里程碑”，可以显示该里程碑更详细的信息和他所属类别。</p>
]]></content:encoded>
			<wfw:commentRss>http://yaohua.cos.name/cn/2010/09/milestones-in-the-history-of-thematic-cartography-statistical-graphics-and-data-visualization/feed/</wfw:commentRss>
		<slash:comments>17</slash:comments>
		</item>
		<item>
		<title>Sketch</title>
		<link>http://yaohua.cos.name/cn/2010/09/sketch/?utm_source=rss&amp;utm_medium=rss&amp;utm_campaign=sketch</link>
		<comments>http://yaohua.cos.name/cn/2010/09/sketch/#comments</comments>
		<pubDate>Fri, 03 Sep 2010 12:16:27 +0000</pubDate>
		<dc:creator>tangyaohua</dc:creator>
				<category><![CDATA[Processing]]></category>
		<category><![CDATA[processing]]></category>
		<category><![CDATA[sketch]]></category>

		<guid isPermaLink="false">http://yaohua.cos.name/cn/?p=28</guid>
		<description><![CDATA[Sketch专案 所有在processing开启的一个项目都称为一个sketch专案，每个sketch项目都有一个和sketch项目名称相同的目录，并在此目录中产生一个sketch主程序。例如: 若项目名称为&#8221;Sketch_123&#8243;，则sketch目录名称就是&#8221;Sketch_123&#8243;，而sketch主程序名称就是&#8221;Sketch_123.pde&#8221;。 sketch项目中若有使用影像、图片、声音、字型档案时，要将档案放在sketch目录下的&#8221;data&#8221;目录中。若有使用到其它的链接库时，则需要将链接库档案放在sketch目录下的&#8221;code&#8221;目录中。 当执行汇出功能时，系统会将data及code目录下的所有档案，汇出到一个压缩档。 例如: &#8220;Sketch_123.jar&#8221;。 原则上，sketch项目的档案都会放在Processing的安装目录下，若要将sketch项目的档案放在其它的目录的话，请利用&#8221;File&#8221;功能选单中的&#8221;Preferences&#8221;功能来设定。 另外，可以同时有多个程序档案放在同一个sketch目录下。可以放置Processing原始档(附檔名是.pde)，以及Java原始档(附檔名是.java)。 汇出Applet 若要让sketch程序可以在网页中执行的话，利用Export功能，系统会将Processing原始文件转换到Java原始档格式，然后编译成Applet。同时，系统也会产生一些相关档案，连同Applet档案，储存在sketch目录下的applet目录。 产生的相关档案有 index.html：HTML档案，包含applet及一个link。 Sketch_123.jar：Java Archive Sketch_123.java：Java原始档 Sketch_123.pde：Processing原始档 在汇出时，系统会将data及code目录下的档案全部打包起来。因此，产生的JAR档案可能会很大，若在data及code目录下，有 applet不会用到的档案，可以在汇出前先移除，或者在汇出后再利用压缩软件将JAR档案中不需要的档案移除， 如此就可以将JAR档案减小。 影像坐标系统 Processing采用Cartesian 坐标系统，原点在左上方，如图所示，x轴正值向右， y轴正值向下， z轴正值向前，负值向后。而视角预设在屏幕中间，也就是中心点在[width/2, height/2]。若有一个程序设定图像大小是 320 pixels X 240 pixels， 则[0,0]代表在左上角，[320,240]在右下角。 Programming Modes主程序架构 Processing的程序编辑模式有3种，基本模式(Basic Mode)、连续模式(Continuous Mode) 以及 Java进阶模式(Java Mode)。初学者最好先从基本模式学起，藉以熟悉坐标、变量、循环等的操作，然后再转到连续模式及Java进阶模式编写程序。 基本模式 这个模式用来绘制静态影像及练习程序的基本功能，简单的画线的程序代码可以直接在屏幕上呈现出来，以下这个范例会画一个黄色的长方形在屏幕上。 size(200, 200); // 设定影像大小 200&#215;200 background(255); // 设定背景颜色 noStroke(); //设定无框线 fill(255, 204, 0); [...]]]></description>
			<content:encoded><![CDATA[<p>Sketch专案<br />
所有在processing开启的一个项目都称为一个sketch专案，每个sketch项目都有一个和sketch项目名称相同的目录，并在此目录中产生一个sketch主程序。例如: 若项目名称为&#8221;Sketch_123&#8243;，则sketch目录名称就是&#8221;Sketch_123&#8243;，而sketch主程序名称就是&#8221;Sketch_123.pde&#8221;。</p>
<p>sketch项目中若有使用影像、图片、声音、字型档案时，要将档案放在sketch目录下的&#8221;data&#8221;目录中。若有使用到其它的链接库时，则需要将链接库档案放在sketch目录下的&#8221;code&#8221;目录中。</p>
<p>当执行汇出功能时，系统会将data及code目录下的所有档案，汇出到一个压缩档。 例如: &#8220;Sketch_123.jar&#8221;。</p>
<p>原则上，sketch项目的档案都会放在Processing的安装目录下，若要将sketch项目的档案放在其它的目录的话，请利用&#8221;File&#8221;功能选单中的&#8221;Preferences&#8221;功能来设定。</p>
<p>另外，可以同时有多个程序档案放在同一个sketch目录下。可以放置Processing原始档(附檔名是.pde)，以及Java原始档(附檔名是.java)。</p>
<p>汇出Applet<br />
若要让sketch程序可以在网页中执行的话，利用Export功能，系统会将Processing原始文件转换到Java原始档格式，然后编译成Applet。同时，系统也会产生一些相关档案，连同Applet档案，储存在sketch目录下的applet目录。</p>
<p>产生的相关档案有<br />
index.html：HTML档案，包含applet及一个link。<br />
Sketch_123.jar：Java Archive<br />
Sketch_123.java：Java原始档<br />
Sketch_123.pde：Processing原始档</p>
<p>在汇出时，系统会将data及code目录下的档案全部打包起来。因此，产生的JAR档案可能会很大，若在data及code目录下，有 applet不会用到的档案，可以在汇出前先移除，或者在汇出后再利用压缩软件将JAR档案中不需要的档案移除， 如此就可以将JAR档案减小。<br />
影像坐标系统<br />
Processing采用Cartesian 坐标系统，原点在左上方，如图所示，x轴正值向右， y轴正值向下， z轴正值向前，负值向后。而视角预设在屏幕中间，也就是中心点在[width/2, height/2]。若有一个程序设定图像大小是 320 pixels X 240 pixels， 则[0,0]代表在左上角，[320,240]在右下角。</p>
<p>Programming Modes主程序架构<br />
Processing的程序编辑模式有3种，基本模式(Basic Mode)、连续模式(Continuous Mode) 以及 Java进阶模式(Java Mode)。初学者最好先从基本模式学起，藉以熟悉坐标、变量、循环等的操作，然后再转到连续模式及Java进阶模式编写程序。</p>
<p>基本模式</p>
<p>这个模式用来绘制静态影像及练习程序的基本功能，简单的画线的程序代码可以直接在屏幕上呈现出来，以下这个范例会画一个黄色的长方形在屏幕上。</p>
<p>size(200, 200); // 设定影像大小 200&#215;200<br />
background(255); // 设定背景颜色<br />
noStroke(); //设定无框线<br />
fill(255, 204, 0); //设定填入的颜色<br />
rect(30, 20, 50, 50); //从坐标[30,20]处, 画一个50&#215;50的长方形.</p>
<p>连续模式</p>
<p>这个模式提供一个setup()及draw()程序代码区块，程序一开始会先执行setup()区块的程序代码，而且只会执行一次，一般用来设定初始值及环境参数。接着会反复执行draw()区块,的程序代码，另外在setup()及draw()程序代码区块之外，可以自行再加入其它的程序区块，像是函式、类别、键盘事件和鼠标事件。</p>
<p>以下范例会画4个圆圈，而画圆圈的方式是利用呼叫circles()函式的方式来完成。 circles()函式并不是Processing本身提供的功能，而是在此程序中另外编写的。此外，在draw()区块中的程序代码只会执行一次，因为在setup()区块中，设定了noLoop()，就是不要反复执行。</p>
<p>转换Applet 到 Application<br />
虽然在在Processing的编辑环境中，可以直接以完整的Java程序语言来编写程序，但是只能以汇出Applet的方式在浏览器中执行，如果想要使用一些与存取本机计算机资源有关的程序功能的话，会因Applet在浏览器中执行而有所限制。基于安全性的考虑，在浏览器中执行Applet程序，是禁止存取本机计算机资源的， 否则就会变成黑客程序了。</p>
<p>因此，需要将Applet转换成Application，如此就可以跳脱浏览器，单独地直接在本机计算机上执行程序了，也就可以完全地使用所有的功能了，同时，也可以以全屏幕的方式来呈现影像了。</p>
<p>影像产生模式 (Rendering Modes)<br />
Processing提供的影像产生模式有以下3种，第一是利用Java 2D绘图链接库，第二是利用一个叫做P3D的3D缯图引擎，第三是透过JOGL来与OpenGL接口沟通。至于要决定使用哪一种模式来输出影像，可以利用size()函数来设定。<br />
值得一提的是，Processing花了很多努力，在让不同的影像产生模式结果相近，但是目前还是有一些差异。</p>
<p>JAVA2D<br />
利用Java 2D绘图链接库来产生2D影像。这是预设的影像产生模式，如果没有特叮设定, 就会以这个模式产生影像。</p>
<p>size(200, 200);<br />
background(255);<br />
noStroke();<br />
fill(255, 204, 0);<br />
rect(30, 20, 140, 160);</p>
<p>以下范例是明确地设定要使用Java 2D影像产生模式<br />
size(200, 200, JAVA2D);<br />
background(255);<br />
noStroke();fill(255, 204, 0);<br />
rect(30, 20, 140, 160);</p>
<p>P3D<br />
最适合用来快速绘制3D影像, 也支持2D影像<br />
size(200, 200, P3D);<br />
background(0);<br />
noStroke();fill(204, 204);<br />
translate(width/2, height/2);<br />
rotateX(PI/6);<br />
rotateY(PI/3);<br />
rect(-60, -60, 120, 120);</p>
<p>OPENGL<br />
这个模式适用于有使用支持OpenGL图形加速卡的情况，可以加速图形的产生， 特别适用于要绘制更多图形以及更大显示范围的场合。</p>
<p>Processing透过JOGL来与OpenGL接口沟通，其中JOGL是由SUN的游戏科技小组所发起的。因此，需要在计算机上安装支持OpenGL的图形加速卡，才可以充分发挥JOGL所提供的链接库的功能。</p>
<p>采用此模式产生影像，其效果会因所使用的绘图卡不同及OpenGL支持的程度而有所不同。</p>
<p>摘自：李家祥, Jason Lee,<br />
所以然实验室, Soiizen Lab.,<br />
2005/7/15 </p>
]]></content:encoded>
			<wfw:commentRss>http://yaohua.cos.name/cn/2010/09/sketch/feed/</wfw:commentRss>
		<slash:comments>8</slash:comments>
		</item>
		<item>
		<title>Processing 百科</title>
		<link>http://yaohua.cos.name/cn/2010/09/processing-%e7%99%be%e7%a7%91/?utm_source=rss&amp;utm_medium=rss&amp;utm_campaign=processing-%25e7%2599%25be%25e7%25a7%2591</link>
		<comments>http://yaohua.cos.name/cn/2010/09/processing-%e7%99%be%e7%a7%91/#comments</comments>
		<pubDate>Fri, 03 Sep 2010 12:13:12 +0000</pubDate>
		<dc:creator>tangyaohua</dc:creator>
				<category><![CDATA[Processing]]></category>

		<guid isPermaLink="false">http://yaohua.cos.name/cn/?p=25</guid>
		<description><![CDATA[Processing是一种具有革命前瞻性的新兴计算机语言，它的概念是在电子艺术的环境下介绍程序语言，并将电子艺术的概念介绍给程序设计师。她是 Java 语言的延伸，并支持许多现有的 Java 语言架构，不过在语法 (syntax) 上简易许多，并具有许多贴心及人性化的设计。Processing 可以在 Windows、MAC OS X、MAC OS 9 、Linux 等操作系统上使用。本软件目前是处于初版测试的阶段，试用版听说最近真的快要出了！以 Processing 完成的作品可在个人本机端作用，或以Java Applets 的模式外输至网络上发布。 　　 　　谭晴琄(纽约普拉特艺术学院沟通设计系硕士)/文 2003/09/02 　　● 简介 　　虽然图形使用接口早在二十年前成为主流，但是基础程序语言的教学到今天仍是以文字命令列的接口为主，学习程序语言为什么要那么枯燥呢？人脑天生擅长的是空间的辨识，图形接口利用的正是这种演化上的优势，加上它能提供各种实时且鲜明的图像式反馈 (feedback)，可以大幅缩短学习曲线，并帮助理解抽象逻辑法则。举例来说，计算机屏幕上的一个像素 (pixel) 就是一个变量值 (the value of a variable) 的可视化表现。Processing 将 Java 的语法简化并将其运算结果“感官化”，让使用者能很快享有声光兼备的交互式多媒体作品。 　　Processing 的程序代码是开放的，和近来广受爱戴 Linux 操作系统、Mozilla 浏览器、或 Perl 程序语言等一样，使用者可依照自己的需要自由裁剪出最合适的使用模式。Processing 的应用千变万化，但你会看到它们都遵守开放原始码的规定，这样的设计大幅增加了整个社群的互动性与学习效率。 　　● 源起 　　Processing 的创始者： Casey Reas 与 Ben Fry 是美国麻省理工学院媒体实验室 [...]]]></description>
			<content:encoded><![CDATA[<p>Processing是一种具有革命前瞻性的新兴计算机语言，它的概念是在电子艺术的环境下介绍程序语言，并将电子艺术的概念介绍给程序设计师。她是 Java 语言的延伸，并支持许多现有的 Java 语言架构，不过在语法 (syntax) 上简易许多，并具有许多贴心及人性化的设计。Processing 可以在 Windows、MAC OS X、MAC OS 9 、Linux 等操作系统上使用。本软件目前是处于初版测试的阶段，试用版听说最近真的快要出了！以 Processing 完成的作品可在个人本机端作用，或以Java Applets 的模式外输至网络上发布。<br />
　　<br />
　　谭晴琄(纽约普拉特艺术学院沟通设计系硕士)/文 2003/09/02<br />
　　● 简介<br />
　　虽然图形使用接口早在二十年前成为主流，但是基础程序语言的教学到今天仍是以文字命令列的接口为主，学习程序语言为什么要那么枯燥呢？人脑天生擅长的是空间的辨识，图形接口利用的正是这种演化上的优势，加上它能提供各种实时且鲜明的图像式反馈 (feedback)，可以大幅缩短学习曲线，并帮助理解抽象逻辑法则。举例来说，计算机屏幕上的一个像素 (pixel) 就是一个变量值 (the value of a variable) 的可视化表现。Processing 将 Java 的语法简化并将其运算结果“感官化”，让使用者能很快享有声光兼备的交互式多媒体作品。<br />
　　Processing 的程序代码是开放的，和近来广受爱戴 Linux 操作系统、Mozilla 浏览器、或 Perl 程序语言等一样，使用者可依照自己的需要自由裁剪出最合适的使用模式。Processing 的应用千变万化，但你会看到它们都遵守开放原始码的规定，这样的设计大幅增加了整个社群的互动性与学习效率。<br />
　　● 源起<br />
　　Processing 的创始者： Casey Reas 与 Ben Fry 是美国麻省理工学院媒体实验室 (M.I.T. Media Laboratory) 旗下美学与运算小组 (Aesthetics &#038; Computation Group) 的成员。美学与运算小组由著名的计算机艺术家 John Maeda 领导，于一九九六年成立至今，在短时间内声名大噪，以其高度实验性及概念性的作品，既广且深地在艺术及设计的领域里，探索计算机的运算特质及其带来源源不绝的创造性。极少数人能完美结合并平衡艺术家、设计师和计算机工程师的才华于一身，更重要的是Casey和Ben拥有开放源码的胸襟。<br />
　　Casey Reas，目前为加州大学洛杉矶分校 Media/Arts 系所的助理教授，及意大利艾维里互动设计学院（Interaction Design Institute Ivrea）的附属教授。Casey的作品主要在处理并抽象化生物体系的动态表现，并以多媒体、感应式装置艺术、雕塑和数字印刷等媒材呈现。Casey 时常演讲并展览于于欧洲、亚洲及美国各地，他为本届奥地利的林兹艺术节 (Ars Electronica in Linz︰多媒体艺术界规模最大的年度盛事) 的评审。<br />
　　Ben Fry 现仍在 MIT 的媒体实验室攻读博士，他的研究重心在于如何将有机信息可视化 (Organic Information Visualization)，并创造出能随着不断更新的数据，实时进行形变或质变的电子动态系统。他的博士论文在处理如何可视化解码成功后人类基因学所揭示的庞大信息量，Ben 用的名词为 Genomic Cartography (基因地图学)。<br />
　　● 使用者<br />
　　网络的兴起激起了许多设计师和艺术家学习程序语言的动机，因为学会了计算机的语言，你才能跟它沟通，这样不只静态的图像和文字，连动态的互动模式都可以成为设计师和艺术家全盘掌控下的精确表现。杰出的设计师和艺术家往往具有病态的控制欲，这是无庸置疑的，所以才会有些人干脆连软件都自己写算了，而且写程序也 是艺术！如何写的简洁，还要清楚明白，中间的学问很大。<br />
　　谁会去学或是去用 Processing 呢？大致上是对科学与艺术之间的跨领域表现有兴趣的人。一般的数字艺术家或设计师会以现有的软件（例如 PhotoShop, Illustrator, Flash 或 Director）来从事创作，往往在不知不觉中，被大企业所主导的制式化生产工具，限制了创意及表现形式的可能性。但是如果你 (你) 刚好拥有撰写计算机语言的能力，你 (你) 大可以为了实现脑海里的杰作，专门来打造一个能跑它的程序，如此一来，不但作品的内容是艺术，其工具，形式及创作过程本身亦是一桩艺术。<br />
　　● 现况<br />
　　虽然还只是在测试阶段，Processing 目前已在网络上集结了一群志同道合的专业人士，为软件的教学与更新奠定了基础。网站上的 Learning 和 Reference，就是完整的学习数据库﹔Exhibition 中则提供了许多当今最杰出的电子艺术家的作品与连结﹔你(你)可以在网站中的 Download 部分免费取得该软件，并在讨论版 Discourse 注册，这是一个完全民主式的论坛，可以问问题，发表意见，提供作品的交流，并一起准备未来的附加及外挂程序。哪天若是心血来潮，在泉涌的灵感下创造了什么大作，别害羞，投稿给 试试，你 (你) 的作品将会被放在网站上供人欣赏与学习。<br />
　　在美国，除了 Casey 和 Ben 各自所属的学术机构外，Processing 亦在耶鲁、哥伦比亚、纽约大学、旧金山艺术学院等地被教授或使用。目前看来，Processing 先要在纽约、波士顿、旧金山、洛杉矶、德国伯林、芬兰赫尔辛基、意大利艾维里、哥伦比亚波哥大等城市生根，再由这些城市扩散开来。在亚洲除了日本， Processing 已进入位于马尼拉及汉城的学术机构。<br />
<strong><br />
<em>转自百度百科<a href="http://baike.baidu.com/view/1425612.htm?fr=ala0_1">http://baike.baidu.com/view/1425612.htm?fr=ala0_1</a></em></strong></p>
]]></content:encoded>
			<wfw:commentRss>http://yaohua.cos.name/cn/2010/09/processing-%e7%99%be%e7%a7%91/feed/</wfw:commentRss>
		<slash:comments>34</slash:comments>
		</item>
		<item>
		<title>Look at here</title>
		<link>http://yaohua.cos.name/cn/2010/09/processing/?utm_source=rss&amp;utm_medium=rss&amp;utm_campaign=processing</link>
		<comments>http://yaohua.cos.name/cn/2010/09/processing/#comments</comments>
		<pubDate>Fri, 03 Sep 2010 12:10:06 +0000</pubDate>
		<dc:creator>tangyaohua</dc:creator>
				<category><![CDATA[Processing]]></category>

		<guid isPermaLink="false">http://yaohua.cos.name/cn/?p=23</guid>
		<description><![CDATA[java applet iframe 在图片上方移动鼠标。 转自 www.openprocessing.org]]></description>
			<content:encoded><![CDATA[<div style="overflow:hidden; position:relative; bottom:0px; width:890px; height:500px; margin-left:0px;">
<iframe id="appBox" scrolling="no" frameborder="0"  height="460" style="overflow:visible; position:relative; top:15px; width:600px;" src="http://www.openprocessing.org/visuals/iframe.php?visualID=9456" ><br />
java applet iframe<br />
</iframe>
</div>
<p>在图片上方移动鼠标。</p>
<p>转自 <a href="http://www.openprocessing.org/visuals/iframe.php?visualID=9456"><em>www.openprocessing.org</em><strong></a></p>
]]></content:encoded>
			<wfw:commentRss>http://yaohua.cos.name/cn/2010/09/processing/feed/</wfw:commentRss>
		<slash:comments>614</slash:comments>
		</item>
		<item>
		<title>SAS DDE</title>
		<link>http://yaohua.cos.name/cn/2010/09/sas-dde/?utm_source=rss&amp;utm_medium=rss&amp;utm_campaign=sas-dde</link>
		<comments>http://yaohua.cos.name/cn/2010/09/sas-dde/#comments</comments>
		<pubDate>Fri, 03 Sep 2010 10:51:56 +0000</pubDate>
		<dc:creator>tangyaohua</dc:creator>
				<category><![CDATA[SAS]]></category>

		<guid isPermaLink="false">http://yaohua.cos.name/cn/?p=18</guid>
		<description><![CDATA[有时候哪，excel可能有点小问题，SAS无法直接读取。或者为了方便想直接通过SAS对excel进行修改什么的，就可以用到SAS提供的DDE技术(动态数据编辑，好像是这样翻译)。 /* invoke Excel and open new workbook */ Options noxwait noxsync; x '"c:\program files\microsoft office\office11\excel.exe"'; Data _null_; rc = sleep(5); Run; /* save blank spreadsheet to desired location */ Filename ddecmd dde 'excel&#124;system'; Data _null_; file ddecmd; put '[SAVE.AS("c:\mywork\testfile.xls")]'; Run; /* define fileref using DDE access method */ Filename myfile dde 'excel&#124;c:\mywork\[testfile.xls]sheet1!r1c1:r&#038;rows.c3' notab; /* [...]]]></description>
			<content:encoded><![CDATA[<p>有时候哪，excel可能有点小问题，SAS无法直接读取。或者为了方便想直接通过SAS对excel进行修改什么的，就可以用到SAS提供的DDE技术(动态数据编辑，好像是这样翻译)。<br />
<code><br />
/* invoke Excel and open new workbook */<br />
Options noxwait noxsync;<br />
x '"c:\program files\microsoft office\office11\excel.exe"';<br />
Data _null_;<br />
rc = sleep(5);<br />
Run;<br />
/* save blank spreadsheet to desired location */<br />
Filename ddecmd dde 'excel|system';<br />
Data _null_;<br />
file ddecmd;<br />
put '[SAVE.AS("c:\mywork\testfile.xls")]';<br />
Run;<br />
/* define fileref using DDE access method */<br />
Filename myfile dde 'excel|c:\mywork\[testfile.xls]sheet1!r1c1:r&#038;rows.c3' notab;<br />
/* write to Excel workbook */<br />
Data _null_;<br />
file myfile;<br />
set work.sasdat;<br />
if _n_=1 then put 'name1' '09'x 'name2' '09'x 'name3';<br />
put var1 ‘09’x var2 ‘09’x var3;<br />
Run;<br />
/* save workbook and quit Excel */<br />
Filename ddecmd dde 'excel|system';<br />
Data _null_;<br />
file ddecmd;<br />
put '[SAVE()]';<br />
put '[QUIT()]';<br />
Run;<br />
</code><br />
这是最简单的对excel写操作。<br />
DDE，是通过SAS与office|excel通信，然后将VB语法发送到office|excel，excel再独立完成读写操作。因而在SAS DDE中基本上可以像直接在excel中建立表格一样任意的修改数据、格式、颜色、字体什么的。而通过SAS macro技术可以使该过程批量化。</p>
]]></content:encoded>
			<wfw:commentRss>http://yaohua.cos.name/cn/2010/09/sas-dde/feed/</wfw:commentRss>
		<slash:comments>8</slash:comments>
		</item>
		<item>
		<title>SAS read PDF</title>
		<link>http://yaohua.cos.name/cn/2010/09/sas-read-pdf/?utm_source=rss&amp;utm_medium=rss&amp;utm_campaign=sas-read-pdf</link>
		<comments>http://yaohua.cos.name/cn/2010/09/sas-read-pdf/#comments</comments>
		<pubDate>Thu, 02 Sep 2010 04:39:58 +0000</pubDate>
		<dc:creator>tangyaohua</dc:creator>
				<category><![CDATA[SAS]]></category>

		<guid isPermaLink="false">http://yaohua.cos.name/cn/?p=7</guid>
		<description><![CDATA[SAS 可以读取的数据格式很多，但是对PDF，目前基本没支持。 在SAS的官方网站上，可以看到直接用infile语句读取PDF。如下： data a; infile "test.pdf"; length line $32000; input line $char.; run; 前提是，读取的PDF要是无压缩的（在ods pdf中 compress=no 选项）。 但是这样的读取哪，不是很理想，会遗漏部分信息。 在特定场合有些解决方式。比如想将SAS生成的pdf再读进来而且保证读取正确的话，可以使用如下代码生成tmp文件。 ods ps file=“test.tmp”; 然后再将tmp文件读进来。]]></description>
			<content:encoded><![CDATA[<p>SAS 可以读取的数据格式很多，但是对PDF，目前基本没支持。</p>
<p>在SAS的官方网站上，可以看到直接用infile语句读取PDF。如下：<br />
<code><br />
data a;<br />
infile "test.pdf";<br />
length line $32000;<br />
input line $char.;<br />
run;<br />
</code><br />
前提是，读取的PDF要是无压缩的（在ods pdf中 compress=no 选项）。</p>
<p>但是这样的读取哪，不是很理想，会遗漏部分信息。<br />
在特定场合有些解决方式。比如想将SAS生成的pdf再读进来而且保证读取正确的话，可以使用如下代码生成tmp文件。<br />
<code><br />
ods ps file=“test.tmp”;<br />
</code><br />
然后再将tmp文件读进来。</p>
]]></content:encoded>
			<wfw:commentRss>http://yaohua.cos.name/cn/2010/09/sas-read-pdf/feed/</wfw:commentRss>
		<slash:comments>811</slash:comments>
		</item>
	</channel>
</rss>

