作為考完試後神清氣爽的本人,後續恐怕要開始無限放水了
![R語言——一個簡單的畫圖示例](http://p2.ttnews.xyz/loading.gif)
今天就給個灰常簡單但又有點好玩的例子,這個實例出現在了R軟件的幫助文件裡,函數text
![R語言——一個簡單的畫圖示例](http://p2.ttnews.xyz/loading.gif)
text本身是用來在已有的圖上添加文本用的,按理來說應該不算是個複雜的函數,但這個示例一下子就擊穿了本人的理解,這兩行寫成這樣是像幹嘛???
首先第一行plot,這個畫出來倒是很簡潔,因為它就是個空白的圖,兩個-1:1的取值範圍只限制了這個圖的座標系大小
第二行前半截K
但如果第二行代碼貼上執行一下,就畫出來了下邊這種效果
K
我勒個去,這效果真是槓槓的,但這是個啥意思咧?還是分解下步驟吧,重點是text裡的前半截
可以看到,這玩意是個複數數列,相當於在一個數裡同時包括了x軸和y軸的座標信息
這樣表示出來的意思就是,第一個點在圖上的位置是x為0.924,y為0.383,這跟上圖中1顯示的那個地方倒是對得上的
但是,這行裡沒指定顯示什麼文字啊?它怎麼自動跳出1到16這串數的?然後我看了看上頭的參數介紹,找到了它的默認值
labels = seq_along(x$x)
查到seq_along之後,我大概理解這東西取的是向量當前的位置序號
那按這個邏輯的話,是不是隻要輸入任意複數列,就可以隨便畫了呢,清個屏稍稍嘗試下
plot還是那個plot,大白牆還是那個大白牆,字的顏色設了個有點騷的彩虹色10號,效果如下:
哈哈哈,挺好玩的嘛,那只有這個text可以這麼玩麼?畫線的那個lines能不能也這麼幹?
我試試哈
K=16; lines(exp(1i * 2 * pi * (1:K+1) / K), col = 2)
事實證明,可以,但因為連接所有點的是直線,所以畫出來的是個十六邊形
說好了簡單點,所以就這些先,我還要看電視呢~
閱讀更多 jennifer5jl 的文章