2016-12-30 4 views
7

मेरे पास एक नक्शा पुस्तिका है जिसे मैं एक विशिष्ट फ़ोल्डर में एक HTML फ़ाइल में सहेजना चाहता हूं। मैं Windows 7.आर में htmlwidget से savewidget, किसी अन्य फ़ोल्डर में HTML फ़ाइल को सहेज नहीं सकता

उपयोग कर रहा हूँ मैं निम्नलिखित की कोशिश की:

library(htmlwidgets) 
saveWidget(map_leaflet, file="ressources/test.html") 

library(htmlwidgets) 
saveWidget(map_leaflet, file="ressources\\test.html") 

library(htmlwidgets) 
path_name <- file.path("ressources", "test.html", fsep="\\") 
saveWidget(map_leaflet, file=path_name) 

library(htmlwidgets) 
path_name <- paste("ressources", "test.html", sep="/") 
saveWidget(map_leaflet, file=path_name) 

एक त्रुटि संदेश के रूप में, Rstudio सत्र के आधार पर, मैं या तो

है

1) setwd करने में त्रुटि (dir): कार्यशील निर्देशिका

2) पथ नहीं ढूंढा जा सकता नहीं बदल सकते

जब मैं केवल इस तरह बचाने:

library(htmlwidgets) 
saveWidget(map_leaflet, file="test.html") 

यह पूरी तरह से काम करता है।

आपकी मदद के लिए अग्रिम धन्यवाद।

+0

ऐसा लगता है कि निर्देशिका 'ressources' उस स्थान से मौजूद नहीं है जहां कोड निष्पादित किया जा रहा है। क्या आपने यह सुनिश्चित करने के लिए कि आप सही निर्देशिका से इसे चला रहे हैं, और 'dir() 'यह सुनिश्चित करने के लिए कि' ressources' उस स्थान पर मौजूद है, इस कोड को चलाने से पहले 'getwd()' आर को जांचने का प्रयास करें? यदि वे दोनों सही दिखते हैं, तो सहेजने की कोशिश करने से पहले उस निर्देशिका में बदलने के लिए 'setwd ("ressources")' का उपयोग करने के लिए एक कम अनुकूल समाधान हो सकता है। – user5359531

+2

हाय वहाँ, इसलिए मैंने getwd() और dir() की कोशिश की और ressources सही ढंग से दिखाई देते हैं। मैंने फिर इस 'पथ <- file.path (getwd(), "ressources", "test.html")' 'saveWidget (map_leaflet, file = path) 'की कोशिश की और इस बार यह पूरी तरह से काम करता है। मुझे लगता है कि इसे सिर्फ पूरा रास्ता चाहिए। क्या आप अपनी टिप्पणी को उत्तर के रूप में बना सकते हैं ताकि मैं प्रश्न के उत्तर के रूप में चिह्नित कर सकूं? धन्यवाद – tuttifolies

+0

मेरी टिप्स बस समस्या निवारण थे। यह अभी भी लगता है जैसे आप उस कोड को निष्पादित नहीं कर रहे हैं जहां से आप सोचते हैं कि आप हैं। लेकिन जैसा कि आपने पाया, पूर्ण पथ का उपयोग करके, और 'file.path()' का उपयोग करके पथ सुरक्षित रूप से पारित करने के अधिक निश्चित तरीके हैं। आप 'normalizePath()' फ़ंक्शन को भी देखना चाहेंगे। यह आपको पूर्ण पथ प्राप्त करने में मदद कर सकता है, और यदि पथ मौजूद नहीं है या गलत है तो आपको यह भी बता सकता है। इन्हें आज़माएं और आप देखेंगे: 'सामान्यीकृतपैथ ("।")', 'सामान्यीकृतपैथ ("~")', 'सामान्यीकृतपैथ ("./ foo") '<- अगर' foo' मौजूद नहीं है तो त्रुटि होगी। इसके अलावा आप 'file = 'के लिए सापेक्ष पथ का उपयोग करने में असमर्थ हो सकते हैं – user5359531

उत्तर

6

सहमत हुए।

f<-"ressources\\test.html" 
saveWidget(map_leaflet,file.path(normalizePath(dirname(f)),basename(f))) 

मुद्दों है कि saveWidget रिश्तेदार pathnames साथ काम नहीं करता और normalizePath कि अभी तक किया मौजूद फ़ाइलों के लिए पथ के लिए काम नहीं करता दिखाई देते हैं:

यहाँ एक समाधान नहीं है।

मैं इसे saveWidget में एक बग कहूंगा।

संबंधित मुद्दे

 संबंधित मुद्दे