Error in .External2(C_X11, paste0("png::", filename), g$width, g$height, : 解決linux R繪圖問題


 

1、R-4.0.3安裝過程中隱患

 

 

2、查看當前系統

[root@centos8 test]# cat /etc/redhat-release CentOS Linux release 8.3.2011 [root@centos8 test]# hostnamectl Static hostname: centos8 Icon name: computer-vm Chassis: vm Machine ID: d5fd22581df140c192815b766d6ec0d7 Boot ID: c7ff573d91e34d83a0c2b0caec78aafc Virtualization: vmware  Operating System: CentOS Linux 8 CPE OS Name: cpe:/o:centos:centos:8 Kernel: Linux 4.18.0-240.el8.x86_64 Architecture: x86-64

 

3、查看R版本

[root@centos8 test]# R --version R version 4.0.3 (2020-10-10) -- "Bunny-Wunnies Freak Out" Copyright (C) 2020 The R Foundation for Statistical Computing Platform: x86_64-pc-linux-gnu (64-bit) R is free software and comes with ABSOLUTELY NO WARRANTY. You are welcome to redistribute it under the terms of the GNU General Public License versions 2 or 3. For more information about these matters see https://www.gnu.org/licenses/.

 

4、啟動R,檢查繪圖功能

[root@centos8 test]# R

R version 4.0.3 (2020-10-10) -- "Bunny-Wunnies Freak Out" Copyright (C) 2020 The R Foundation for Statistical Computing Platform: x86_64-pc-linux-gnu (64-bit) R is free software and comes with ABSOLUTELY NO WARRANTY. You are welcome to redistribute it under certain conditions. Type 'license()' or 'licence()' for distribution details. Natural language support but running in an English locale R is a collaborative project with many contributors. Type 'contributors()' for more information and 'citation()' on how to cite R or R packages in publications. Type 'demo()' for some demos, 'help()' for on-line help, or 'help.start()' for an HTML browser interface to help. Type 'q()' to quit R. > capabilities() jpeg png tiff tcltk X11 aqua FALSE FALSE FALSE FALSE FALSE FALSE http/ftp sockets libxml fifo cledit iconv TRUE TRUE TRUE TRUE TRUE TRUE NLS profmem cairo ICU long.double libcurl TRUE FALSE FALSE FALSE TRUE TRUE

 

5、測試

> getwd() [1] "/home/test"
> dir() character(0) > png("test.png") Error in .External2(C_X11, paste0("png::", filename), g$width, g$height, : unable to start device PNG In addition: Warning message: In png("test.png") : no png support in this version of R >  jpeg("test.jpg") Error in .External2(C_X11, paste0("jpeg::", quality, ":", filename), g$width, : unable to start device JPEG In addition: Warning message: In jpeg("test.jpg") : no jpeg support in this version of R > bmp("test.bmp") Error in .External2(C_X11, paste0("bmp::", filename), g$width, g$height, : unable to start device BMP In addition: Warning message: In bmp("test.bmp") : unable to open connection to X11 display ''

  > quit()
  Save workspace image? [y/n/c]: n

 

 

6、

[root@centos8 test]# yum install libpng-devel libtiff-devel libjpeg-turbo-devel pango-devel libpng-devel -y ………… ………… Verifying : freetype-2.9.1-4.el8_3.1.x86_64                                                                           23/24 Verifying : freetype-2.9.1-4.el8.x86_64                                                                               24/24 Installed products updated. Upgraded: freetype-2.9.1-4.el8_3.1.x86_64 Installed: cairo-devel-1.15.12-3.el8.x86_64              expat-devel-2.2.5-4.el8.x86_64             fontconfig-devel-2.13.1-3.el8.x86_64 freetype-devel-2.9.1-4.el8_3.1.x86_64         fribidi-devel-1.0.4-8.el8.x86_64           glib2-devel-2.56.4-8.el8.x86_64 graphite2-devel-1.3.10-10.el8.x86_64          harfbuzz-devel-1.7.5-3.el8.x86_64          libXext-devel-1.3.4-1.el8.x86_64 libXft-devel-2.3.3-1.el8.x86_64               libXrender-devel-0.9.10-7.el8.x86_64       libicu-devel-60.3-2.el8_1.x86_64 libjpeg-turbo-devel-1.5.3-10.el8.x86_64       libpng-devel-2:1.6.34-5.el8.x86_64         libtiff-devel-4.0.9-18.el8.x86_64 libuuid-devel-2.32.1-24.el8.x86_64            pango-devel-1.42.4-6.el8.x86_64            pcre-cpp-8.42-4.el8.x86_64 pcre-devel-8.42-4.el8.x86_64                  pcre-utf16-8.42-4.el8.x86_64               pcre-utf32-8.42-4.el8.x86_64 pixman-devel-0.38.4-1.el8.x86_64 Complete!

 

7、

[root@centos8 R-4.0.3]# cd /home/R-4.0.3/ ## R安裝包所在目錄 [root@centos8 R-4.0.3]# make uninstall ………… ………… make[1]: Leaving directory '/home/R-4.0.3/doc' make[1]: Entering directory '/home/R-4.0.3/tools' make[1]: Nothing to be done for 'uninstall'. make[1]: Leaving directory '/home/R-4.0.3/tools' make[1]: Entering directory '/home/R-4.0.3/m4' make[1]: Nothing to be done for 'uninstall'. make[1]: Leaving directory '/home/R-4.0.3/m4'

 

8、

[root@centos8 R-4.0.3]# ./configure --prefix=/home/software/R/ --enable-R-shlib ………… ………… Interfaces supported: X11 External libraries: pcre2, readline, curl  Additional capabilities: PNG, JPEG, TIFF, NLS, cairo, ICU Options enabled: shared R library, shared BLAS, R profiling Capabilities skipped: Options not enabled: memory profiling Recommended packages: yes configure: WARNING: you cannot build info or HTML versions of the R manuals configure: WARNING: you cannot build PDF versions of the R manuals configure: WARNING: you cannot build PDF versions of vignettes and help pages

 

9、

[root@centos8 R-4.0.3]# make ………… ………… make[2]: Leaving directory '/tmp/Rjavareconf.OW1bvr' JAVA_HOME : /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.275.b01-1.el8_3.x86_64/jre Java library path: $(JAVA_HOME)/lib/amd64/server JNI cpp flags : -I$(JAVA_HOME)/../include -I$(JAVA_HOME)/../include/linux JNI linker flags : -L$(JAVA_HOME)/lib/amd64/server -ljvm Updating Java configuration in /home/R-4.0.3 Done. make[1]: Leaving directory '/home/R-4.0.3'

 

10、

[root@centos8 R-4.0.3]# make install ………… ………… mkdir -p -- /home/software/R/lib64/R/library installing packages ... building HTML index ... make[2]: Leaving directory '/home/R-4.0.3/src/library' make[1]: Leaving directory '/home/R-4.0.3/src' make[1]: Entering directory '/home/R-4.0.3/tests' make[1]: Nothing to be done for 'install'. make[1]: Leaving directory '/home/R-4.0.3/tests'

 

11、測試R

[root@centos8 R-4.0.3]# cd /home/test/ [root@centos8 test]# R R version 4.0.3 (2020-10-10) -- "Bunny-Wunnies Freak Out" Copyright (C) 2020 The R Foundation for Statistical Computing Platform: x86_64-pc-linux-gnu (64-bit) R is free software and comes with ABSOLUTELY NO WARRANTY. You are welcome to redistribute it under certain conditions. Type 'license()' or 'licence()' for distribution details. Natural language support but running in an English locale R is a collaborative project with many contributors. Type 'contributors()' for more information and 'citation()' on how to cite R or R packages in publications. Type 'demo()' for some demos, 'help()' for on-line help, or 'help.start()' for an HTML browser interface to help. Type 'q()' to quit R. > capabilities() jpeg png tiff tcltk X11 aqua TRUE TRUE TRUE FALSE FALSE FALSE http/ftp sockets libxml fifo cledit iconv TRUE TRUE TRUE TRUE TRUE TRUE NLS profmem cairo ICU long.double libcurl TRUE FALSE TRUE TRUE TRUE TRUE > dir() character(0) > png("test.png") > plot(1:10,col="red",pch=15,cex=2) > dev.off() null device 1
> dir() [1] "test.png"
> jpeg("test.jpg") > plot(1:10,col="blue",pch=17,cex=2) > dev.off() null device 1
> dir() [1] "test.jpg" "test.png"
> bmp("test.bmp") > plot(1:10,col="purple",pch=18,cex=2) > dev.off() null device 1
> dir() [1] "test.bmp" "test.jpg" "test.png"

 

 

 

 

 

 問題解決。

 

參考:

http://blog.sina.com.cn/s/blog_db13b2400102v5p2.html

https://www.cnblogs.com/liujiaxin2018/p/14357922.html

https://blog.csdn.net/wa2003/article/details/46310811/

https://stackoverflow.com/questions/17243648/cant-display-png

 

 

 

 

 

 

 

 

 

 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM