R 기본 플롯 사용하기
기본 플롯 옵션
par()
fig=c(x1, x2, y1, y2) x1에서 x2까지 y1에서 y2까지 그림을 입력
pty=“s”or“m” mar=c(5.1,4.1,4.1,2.1) 그래픽 바깥 여백 new=T는 겹처서 그리기 mfrow=c(행의수,열의수) 한 그
래픽에 여러그래프그리기
split.screen(fig=c(행,열)) 행의 수와 열의수로 쪼갬
split.screen(fig=c(1,2), screen=2) screen에 해당하는 칸을 행과 열의 수로 쪼갬
screen(4) ;hist(cars$dist) screen(4)에 그래픽을 넣음
erase.screen(n=1);
screen(1) close.screen(all=TRUE)
layout(mat =matrix(c(1,1,2,3),nrow=2,byrow=T)) ex)
1 | |
2 | 3 |
모양 그래픽 출력
산점도
plot(x, y, type=,main=\“c\“,sub=,xlab=,xlim=,axes=,bty=,col=,pch=,lty=,lwd=,cex=,bg=,fg=“색깔”)
axes=축의 유무 las=축의 눈금값 방향 fg=축의 색깔,bty=축 종류 o, I, 7, c,u, ]가 존재,mar=1~4순으로 여분 설정 tcl=0.3 : 축이 안쪽을가리키는지
xaxt='n' x축 지우기
pch=점의 종류(1~25), lty= 선의 종류(1~6), lwd=선의 두깨, bg=배경색,cex= 크기
col.xlab, cex.main 등 사용가능
추가 점, 텍스트, 선, 직선
points(x,y,내용)
text(x,y,내용,srt=각도) srt는 텍스트의 회전각도
lines(x,y)
abline(a=,b=,v=,h=) bx+a의 직선을 그음. v는 수직, h는 수평선
arrows(x1,y1,x2,y2,angle=, length=,code=) 시점과 종점을 긋는 직선 긋기 code(0~2)는 직선의 종류 angle은 화살표의 각
사각형(rectangle) 생성
rect(왼쪽밑의x좌표, 왼쪽 밑의 y좌표, 오른쪽위의 x좌표, 오른쪽 위의 y좌표, border=, density=)
border은 테두리선 색깔, density는 사선의 밀도
box()는 테두리
order 자료의 첨자를 정렬 ex)data<-data[order(data[,2]),]
범례(legned)
legend(위치 ,legend=c(“”,“”),fill=1:2, density=)
위치 bottom, left, right ,top, center의 조합 혹은 좌표 사용가능 fill은 채우기색
axis(1에서4 ,at=축의 시작:끝, labels=축의 값, line=, outer=, col.axis=축의 값의 색)
1:4는 아래 왼 위 오른 순 line은 축과 떨어진 거리, outer=T은 맨 바깥 태두리
격자눈금선
grid(); grid(가로의 개수, 세로의 개수)
다각형
polygon(x좌표의 집합, y좌표의 집합)
rug(기준변수, side=1~4중하나, ticksize=) ticksize는 높이 rug는 데이터들을 하나의 좌표축에 표시하는 방법
chull : 가장 바깥쪽 테두리 점에 해당하는 첨자를 구해줌
locator(n,type=“p,l,o 중 하나”) : n개의 좌표를 그래픽에서 찾아줌
identify(x, y, output, pos=T, n=,plot=T,offset=n,atpen=T ,tolerance=n)
: 좌표를 찍으면 거기에 해당하는 output 값을 찾아줌
output은 x나 y값 디폴트는 첨자,pos=T : 포인트 값 반환 offset은 출력되는 숫자와 점사이의 거리
atpen=T 찍은 점에 바로 output값을 줌, tolerance= 인식 거리
곡선
curve(표현식)
히스토그램
hist(단일변수,border=“색깔”)
부분집합
ex) subset(data, var==element1| var!=elment2)
저장
png(filename="plot1.png", width=480, height=480)
postscript(file="plot1.eps", horizontal = FALSE, onefile=FALSE, height=30, width=50)
pdf(file="plot1.pdf")
dev.list() 실행중인 리스트 확인 dev.cur() 활성화 리스트 확인 dev.set(2) 2번 활성화 dev.copy(which=3)
활성화 된 걸 3번에 복사 dev.off() 장치종료
원근법(perspective)
z<-outer(x,y,f) x,y값을 바꿔가며 f에 넣음 image(z) ;contour(z) 등고선
persp(x,y,z,theta=0,phi=0,expand=) 주면좌표계
library(rgl)
plot3d(x,y,z,col=ifelse(z>0.5,1,2))
persp3d(x,y,z,add=T, col="lightblue", aspect=c(1,1,0.5))
aspect는 가로세로비,add=축 여부(F 안됨)
'R' 카테고리의 다른 글
leaflet 지도그리기 (0) | 2019.04.09 |
---|---|
객체지향언어란 (0) | 2019.04.08 |
이미지 벡터화해서 저장하기 (0) | 2019.03.21 |
정규표현식(R) (3) | 2019.03.19 |
R 개인 패키지만들기에서 간단한 사용법 까지(git을 활용) (0) | 2019.03.16 |
R 개인 패키지만들기에서 간단한 사용법 까지(git을 활용)
Git 다운로드
https://git-scm.com/download/win
git이 자동 다운로드 된다.
git을 설치한 뒤 실행한다.
git config --global user.name '유저이름'
git config --global user.email '이메일@~'
git의 복사는 ctrl+insert 붙여넣기는 ctrl+insert 이다.
R 패키지 만들기
그런다음 https://github.com/에 가입한 뒤 New repository를 생성하자.
비공개는 유료라고 하는데 학생은 무료로 가입 가능하다고 하니 참고하자.
Repository name에 만드려는 패키지의 이름을 적자.
create repository 클릭
https 가 적혀 있을텐데 조금있다 사용할 예정이다.
이제 R 스튜디오를 열자.
file>New project 클릭
New directory>R Packge>Package name에 Repository name에서 입력한 패키지 이름 입력>
Create project as subdirectory of 본인 컴퓨터에 저장될 경로 지정
tools에서 global options의 git/SVN의 create RSA Key 클릭>Public key를 복사>
View public key 의 내용 복사> 본인 github 홈페이지에서 오른쪽 상단에 종, +, 옆에 있는 네모에서 설정을 클릭. ssh 키 >
새로운 ssh 키 등록
생성된 프로젝트를 닫거나 스튜디오를 닫은 뒤 방금 저장된 경로로 이동하여 이름을 잠시 바꿔준다.
package라고 저장했으면 폴더명을 package_로 변경
다시 R 스튜디오에서 file>New project클릭
version control 클릭 git 클릭
아까 github 홈페이지에서 생성한 https를 repository URL에 붙여넣자.
그리고 경로는 아까와 같은 경로, project directory name에는 앞에서와 동일한 생성할 패키지명을 입력
다시 패키지 생성 경로로 들어가 package_로 저장한 폴더안에 파일들을 복사 한다음 package 폴더내에 붙여넣기 한 뒤 덮어쓰기한다.
이제 package_폴더는 제거하여도 된다.
.gitignore를 메모장에서 열든 R스튜디오에서 열든 연다.
.Rproj.user
.Rhistory
.RData
.Ruserdata
라고 입력된 내용을
.Rproj.user
.Rhistory
.RData
.Ruserdata 패키지이름.Rproj
.gitignore
라고 변경 후 저장.
.Rbuildignore를 열고
^.*\.Rproj$
^\.Rproj\.user$
라 입력된 내용을
^.*\.Rproj$
^\.Rproj\.user$
.gitignore
README.md
.Rhistory
라고 변경 후 저장.
R 스튜디오 오른쪽에 Push를 클릭하면 Review Changes라는 창이 뜨는데
ctrl+A >space bar 해서 모두 체크해준 뒤 commit message에 commit을 입력해준다.
이제 깃허브 비밀번호를 입력해준다.
전송창에 전송이 끝나면 package가 만들어진다.
패키지의 사용
library(roxygen2)
library(devtools)
install_github('깃허브아이디/패키지')
library(패키지명)
하면 패키지 사용이 가능하다.
use_data(exdata, internal = F,overwrite=T)를 사용해서 패키지에 데이터를 저장 할 수도 있으며
아래 형식으로 스크립트를 저장해 패키지 내에 함수를 저장할 수 있다.
#' 제목
#'
#' @param
#' @return
#' @examples
#' @export
함수이름<-function()
물론 저장 후 아래 코드를 실행하고 push를 해야 가능하며 한글이 있으면 오류가 나는 것 같다.
devtools::document()
'R' 카테고리의 다른 글
leaflet 지도그리기 (0) | 2019.04.09 |
---|---|
객체지향언어란 (0) | 2019.04.08 |
이미지 벡터화해서 저장하기 (0) | 2019.03.21 |
정규표현식(R) (3) | 2019.03.19 |
R 기본 플롯 사용하기 (0) | 2019.03.19 |
R 패키지 설치가 안될 때(RCurl, devtools, rvest) 및 Rstudio 서버 사용자 추가
RCurl, devtools 설치가 안될 때
sudo apt-get install libcurl4-openssl-dev libssl-dev
apt-get remove libcurl4-nss-dev
sudo add-apt-repository –y ppa:webupd8team/java
sudo apt-get update
sudo apt-get –y install oracle-java8-installer
sudo apt-get –y install oracle-java8-set-default
안되면 밑에꺼 실행
sudo apt install default-jre
java -version
sudo add-apt-repository 'deb https://mirrors.nic.cz/R/bin/linux/ubuntu trusty/'
sudo apt-get update
sudo apt-get install r-base-dev
sudo apt-get install libxml2-dev
sudo apt-get install libssl-dev
sudo -i Rsudo -i rstudio
pkg-config rvest
Rstudio 서버 계정 추가
sudo useradd –m 유저명
sudo adduser –m 유저명
sudo passwd 유저명
sudo chmod 777 –R 경로
예제
sudo useradd –m share1
sudo adduser –m share1
sudo passwd share1
sudo chmod 777 –R /home/share1/
'R > Rstudio Server' 카테고리의 다른 글
rstudio server 관리 및 설정 (0) | 2020.01.24 |
---|---|
우분투에서 R로 Selenium 사용하기(도커 사용) (0) | 2019.03.23 |
ubuntu18.04 r-studio server setup (0) | 2019.03.15 |
ubuntu18.04 r-studio server setup
R -Studio server 설치
R다운로드
sudo apt-get install r-base
R-Studio 설치
sudo apt-get install gdebi-core
wget https://download2.rstudio.org/rstudio-server-1.1.456-amd64.deb
sudo gdebi rstudio-server-1.1.456-amd64.deb
sudo rstudio-server verify-installation
sudo ufw allow 8787
R shiny server 설치
sudo su -\
-c "R -e \"install.packages('shiny',repos='https://cran.rstudio.com/')\""
sudo su -\
-c "R -e \"install.packages('rmarkdown',repos='https://cran.rstudio.com/')\""
wget https://download3.rstudio.org/ubuntu-14.04/x86_64/shiny-server-1.5.7.907-amd64.deb
sudo gdebi shiny-server-1.5.7.907-amd64.deb
sudo systemctl start shiny-server
sudo systemctl enable shiny-server
sudo ufw allow 3838
sudo chmod 777 -R /opt/shiny-server/samples/
다하고 나서 R의 패키지 인스톨 경로 설정이 필요
내 경우
.libPaths('/usr/local/lib/R/site-library')
R-studio server 한글문제
sudo apt-get install uim
shiny server 아래의 애러 뜰 때
The application exited during initialization.
sudo vi /etc/shiny-server/shiny-server.conf
실행 후
run_as shiny를 run_as 사용자이름으로 변경
'R > Rstudio Server' 카테고리의 다른 글
rstudio server 관리 및 설정 (0) | 2020.01.24 |
---|---|
우분투에서 R로 Selenium 사용하기(도커 사용) (0) | 2019.03.23 |
R 패키지 설치가 안될 때(RCurl, devtools, rvest) 및 Rstudio 서버 사용자 추가 (0) | 2019.03.15 |
NAS 설치(삼바, mysql)
sudo apt install mysql-server
sudo mysql_secure_installation
Y->1->(password 입력)->Y->Y->Y->Y->Y
sql설치
sudo mysql
(mysql 환경 내에서)
create database 데이터베이스명 default character set utf8;
show variables like 'validate_password%';
grant all privileges on 데이터베이스명.* to '사용자이름'@'localhost' identified by '비번';
mysql -u webnauts -p
show databases;
use db;
exit;
php설치
sudo apt install php php-mysql
sudo vi /var/www/html/info.php
<?php phpinfo(); ?> 입력 -> :wq입력
인터넷에 localhost/info.php 확인
sudo apt install phpmyadmin
확인 -> 예 -> mysql id 입력
localhost/phpmyadmin 접속
혹시 접속이 안되면
sudo -H gedit /etc/apache2/apache2.conf
include /etc/phpmyadmin/apache.conf
/etc/init.d/apache2 restart
cmd로 설정
sudo apt-get install samba
sudo vi /ect/samba/smb.conf
내부설정
[data]
path = /home/data/ 등의 경로
writeable = yes
browseable = yes
guest ok = yes
creat mask = 0777
directory mask= 0777
security mask = 0777
gui로 설정
sudo apt-get install system-config-samba
sudo touch /etc/libuser.conf
sudo system-config-samba
sudo systemctl restart smbd
sudo systemctl /lib/systemd/systemd-sysv-install enable smbd
sudo systemctl status smbd
nextcloud(miria DB 사용했을 때 nas 설정)
sudo apt-get install samba
sudo apt-get install system-config-samba
sudo touch /etc/libuser.conf
sudo system-config-samba
sudo systemctl restart smbd
sudo systemctl /lib/systemd/systemd-sysv-install enable smbd
sudo systemctl status smbd
'ubuntu' 카테고리의 다른 글
파이썬 Selenium linux 환경 구축하기 (ubuntu) (0) | 2019.05.08 |
---|---|
우분투 팀뷰어 끊김 현상 (0) | 2019.03.26 |
주피터 서버 만들기(최종) (0) | 2019.03.25 |
NEXTCLOUD 설치 (2) | 2019.03.14 |
우분투 아무것도 모르고 따라 할 때 필요한 것들 (0) | 2019.03.14 |
NEXTCLOUD 설치
apache2 설치
sudo apt install apache2
디렉토리 목록 비활성화
sudo sed -i "s/Options Indexes FollowSymLinks/Options FollowSymLinks/" /etc/apache2/apache2.conf을 통해 디렉토리 목록 비활성화
Apache2 서비스가 항상 서버 부트로 시작되도록 활성화,
sudo systemctl stop apache2.service
마리아db 설치
sudo apt install mariadb-server mariadb-client
마리아db 가 항상 서버 부트로 시작되도록 활성화.
sudo systemctl stop mariadb.service
sudo mysql_secure_installation
enter -> Y -> 암호입력-> 익명사용자 제거(Y)->루트 로그인 원격 비허용(Y)->Y->Y
maria db 재시작
sudo systemctl restart mariadb.service
PHP 및 관련 모듈 설치
sudo apt-get install software-properties-common
sudo add-apt-repository ppa:ondrej/php
sudo apt update
sudo apt install php7.1 libapache2-mod-php7.1 php7.1-common php7.1-mbstring php7.1-xmlrpc php7.1-soap php7.1-apcu php7.1-smbclient php7.1-ldap php7.1-redis php7.1-gd php7.1-xml php7.1-intl php7.1-json php7.1-imagick php7.1-mysql php7.1-cli php7.1-mcrypt php7.1-ldap php7.1-zip php7.1-curl
#옵션 수정
sudo vi /etc/php/7.1/apache2/php.ini
#적을 내용
memory_limit = 256M(원하는 만큼)
upload_max_filesize = 100M(업로드 파일 최대크기)
sudo mysql -u root -p
(여기서 만든 암호가 데이터베이스 암호 )
CREATE DATABASE 데이터베이스이름;
CREATE USER '유저아이디'@'localhost' IDENTIFIED BY '비밀번호';
GRANT ALL ON 데이터베이스이름.* TO '사용자이름'@'localhost' IDENTIFIED BY '비밀번호' WITH GRANT OPTION;
FLUSH PRIVILEGES;
EXIT;
다른경로로 하고 싶을 때 맨 밑 참조
cd /tmp && wget https://download.nextcloud.com/server/releases/nextcloud-11.0.1.zip
unzip nextcloud-11.0.1.zip
sudo mv nextcloud /var/www/html/nextcloud/
mv는 경로 이동이고 뒤 경로는 넥스트 클라우드로 사용될 우분투의 폴더경로
권한 변경
sudo chown -R www-data:www-data /var/www/html/nextcloud/
권한 할당
sudo chmod -R 755 /var/www/html/nextcloud/
내용 입력
sudo vi /etc/apache2/sites-available/nextcloud.conf
아래 내용 입력
<VirtualHost *:80>
ServerAdmin admin@example.com
DocumentRoot /var/www/html/nextcloud/
ServerName example.com
ServerAlias www.example.com
Alias /nextcloud "/var/www/html/nextcloud/"
<Directory /var/www/html/nextcloud/>
Options +FollowSymlinks
AllowOverride All
Require all granted
<IfModule mod_dav.c>
Dav off
</IfModule>
SetEnv HOME /var/www/html/nextcloud
SetEnv HTTP_HOME /var/www/html/nextcloud
</Directory>
ErrorLog ${APACHE_LOG_DIR}/error.log
CustomLog ${APACHE_LOG_DIR}/access.log combined
</VirtualHost>
실행
sudo a2ensite nextcloud.conf
sudo a2enmod rewrite
sudo a2enmod headers
sudo a2enmod env
sudo a2enmod dir
sudo a2enmod mime
sudo systemctl restart apache2.service
경로를 다르게 할 때 잘 안되서
/var/www/html
cd /tmp && wget https://download.nextcloud.com/server/releases/nextcloud-11.0.1.zip
unzip nextcloud-11.0.1.zip
sudo mv nextcloud /var/www/html/nextcloud/
를 한 후
unzip nextcloud-11.0.1.zip
sudo mv nextcloud 원하는 경로
를 실행한 후
위 사진에 데이터 폴더만 수정하였다.
'ubuntu' 카테고리의 다른 글
파이썬 Selenium linux 환경 구축하기 (ubuntu) (0) | 2019.05.08 |
---|---|
우분투 팀뷰어 끊김 현상 (0) | 2019.03.26 |
주피터 서버 만들기(최종) (0) | 2019.03.25 |
NAS 설치(삼바, mysql) (0) | 2019.03.15 |
우분투 아무것도 모르고 따라 할 때 필요한 것들 (0) | 2019.03.14 |