Gnuplottex: Pass latex command to gnuplot script The 2019 Stack Overflow Developer Survey...

writing variables above the numbers in tikz picture

Are spiders unable to hurt humans, especially very small spiders?

I am an eight letter word. What am I?

Does adding complexity mean a more secure cipher?

Getting crown tickets for Statue of Liberty

Can withdrawing asylum be illegal?

Will it cause any balance problems to have PCs level up and gain the benefits of a long rest mid-fight?

Did any laptop computers have a built-in 5 1/4 inch floppy drive?

Why didn't the Event Horizon Telescope team mention Sagittarius A*?

What is the most efficient way to store a numeric range?

What is the meaning of Triage in Cybersec world?

Is it okay to consider publishing in my first year of PhD?

Why not take a picture of a closer black hole?

How to translate "being like"?

Accepted by European university, rejected by all American ones I applied to? Possible reasons?

How can I add encounters in the Lost Mine of Phandelver campaign without giving PCs too much XP?

Why does the nucleus not repel itself?

Why couldn't they take pictures of a closer black hole?

Cooking pasta in a water boiler

Why are there uneven bright areas in this photo of black hole?

How to obtain a position of last non-zero element

What's the name of these plastic connectors

Geography at the pixel level

Kerning for subscripts of sigma?



Gnuplottex: Pass latex command to gnuplot script



The 2019 Stack Overflow Developer Survey Results Are InLaTex variable inside gnuplot codeAccelerating LaTeX packages using a make like functionalityReading and (custom) formatting a CSV (not csvautotabular)How to use gnuplottex?A gnuplottex filename issueGnuplottex is not workingGnuplottex axis formatGnuplottex font size to whole graphGnuplottex not working in TeXstudioGnuplottex and subfiguresUse GnuPlot with latex












0















I want to access and plot the same data from different LaTeX documents (a paper and a beamer presentation) using gnuplottex. The data and the gnuplot script is stored at some individual position relative to the two documents. To re-use as much code as possible, I would like to define the relative path to the data in each document in a macro, here datapath.



My question is: How can I pass the value of this command to the gnuplot script? I would basically like to use the following in my MWE:



plot datapath'/data.csv' using 1:2 with lines


I did find this thread. However I was unable to modify it to my needs. Can someone help me, please?





MWE



documentclass{article}

usepackage[latin1]{inputenx}
usepackage{filecontents}
usepackage[
miktex, %
subfolder, % generated graphs in a ”gnuplottex” subfolder
cleanup, % Delete the .gnuplot files after conversion
]{gnuplottex}

newcommand{datapath}{./ZZZ}

begin{document}

% This is the data file to be plotted from
begin{filecontents*}{datapath/data.csv}
Col1,Col2
0,0
1,1
end{filecontents*}

% This is the gnuplot script I would like to use the value of datapath in
begin{filecontents*}{datapath/script.gnuplot}
set key autotitle columnhead
set datafile separator "," # for csv-file
plot './ZZZ/data.csv' using 1:2 with lines
end{filecontents*}

begin{figure}[htbp]
centering
gnuplotloadfile[terminal=cairolatex]{datapath/script.gnuplot}
end{figure}

end{document}









share|improve this question














bumped to the homepage by Community 7 mins ago


This question has answers that may be good or bad; the system has marked it active so that they can be reviewed.
















  • Your MWE works fine for me on Linux with pdflatex.

    – Lars Kotthoff
    Feb 15 '18 at 17:22











  • Sure, it works great, no question. But I want to be able to use plot datapath'/data.csv' using 1:2 with lines instead of plot './ZZZ/data.csv' using 1:2 with lines. But how can I pass and expand the value of datapath inside the gnuplot document or store the content of datapath in a variable inside the gnuplot script as done in the post I linked to in my question?

    – krtek
    Feb 15 '18 at 17:30











  • See stackoverflow.com/q/12328603/923955 I guess you need to do renewcommand{gnuplotexe}{gnuplot -e "dirname=./ZZZ"} and use dirname in the script file. I don't know about quoting, though, perhaps you don't need them.

    – egreg
    Feb 15 '18 at 18:25


















0















I want to access and plot the same data from different LaTeX documents (a paper and a beamer presentation) using gnuplottex. The data and the gnuplot script is stored at some individual position relative to the two documents. To re-use as much code as possible, I would like to define the relative path to the data in each document in a macro, here datapath.



My question is: How can I pass the value of this command to the gnuplot script? I would basically like to use the following in my MWE:



plot datapath'/data.csv' using 1:2 with lines


I did find this thread. However I was unable to modify it to my needs. Can someone help me, please?





MWE



documentclass{article}

usepackage[latin1]{inputenx}
usepackage{filecontents}
usepackage[
miktex, %
subfolder, % generated graphs in a ”gnuplottex” subfolder
cleanup, % Delete the .gnuplot files after conversion
]{gnuplottex}

newcommand{datapath}{./ZZZ}

begin{document}

% This is the data file to be plotted from
begin{filecontents*}{datapath/data.csv}
Col1,Col2
0,0
1,1
end{filecontents*}

% This is the gnuplot script I would like to use the value of datapath in
begin{filecontents*}{datapath/script.gnuplot}
set key autotitle columnhead
set datafile separator "," # for csv-file
plot './ZZZ/data.csv' using 1:2 with lines
end{filecontents*}

begin{figure}[htbp]
centering
gnuplotloadfile[terminal=cairolatex]{datapath/script.gnuplot}
end{figure}

end{document}









share|improve this question














bumped to the homepage by Community 7 mins ago


This question has answers that may be good or bad; the system has marked it active so that they can be reviewed.
















  • Your MWE works fine for me on Linux with pdflatex.

    – Lars Kotthoff
    Feb 15 '18 at 17:22











  • Sure, it works great, no question. But I want to be able to use plot datapath'/data.csv' using 1:2 with lines instead of plot './ZZZ/data.csv' using 1:2 with lines. But how can I pass and expand the value of datapath inside the gnuplot document or store the content of datapath in a variable inside the gnuplot script as done in the post I linked to in my question?

    – krtek
    Feb 15 '18 at 17:30











  • See stackoverflow.com/q/12328603/923955 I guess you need to do renewcommand{gnuplotexe}{gnuplot -e "dirname=./ZZZ"} and use dirname in the script file. I don't know about quoting, though, perhaps you don't need them.

    – egreg
    Feb 15 '18 at 18:25
















0












0








0








I want to access and plot the same data from different LaTeX documents (a paper and a beamer presentation) using gnuplottex. The data and the gnuplot script is stored at some individual position relative to the two documents. To re-use as much code as possible, I would like to define the relative path to the data in each document in a macro, here datapath.



My question is: How can I pass the value of this command to the gnuplot script? I would basically like to use the following in my MWE:



plot datapath'/data.csv' using 1:2 with lines


I did find this thread. However I was unable to modify it to my needs. Can someone help me, please?





MWE



documentclass{article}

usepackage[latin1]{inputenx}
usepackage{filecontents}
usepackage[
miktex, %
subfolder, % generated graphs in a ”gnuplottex” subfolder
cleanup, % Delete the .gnuplot files after conversion
]{gnuplottex}

newcommand{datapath}{./ZZZ}

begin{document}

% This is the data file to be plotted from
begin{filecontents*}{datapath/data.csv}
Col1,Col2
0,0
1,1
end{filecontents*}

% This is the gnuplot script I would like to use the value of datapath in
begin{filecontents*}{datapath/script.gnuplot}
set key autotitle columnhead
set datafile separator "," # for csv-file
plot './ZZZ/data.csv' using 1:2 with lines
end{filecontents*}

begin{figure}[htbp]
centering
gnuplotloadfile[terminal=cairolatex]{datapath/script.gnuplot}
end{figure}

end{document}









share|improve this question














I want to access and plot the same data from different LaTeX documents (a paper and a beamer presentation) using gnuplottex. The data and the gnuplot script is stored at some individual position relative to the two documents. To re-use as much code as possible, I would like to define the relative path to the data in each document in a macro, here datapath.



My question is: How can I pass the value of this command to the gnuplot script? I would basically like to use the following in my MWE:



plot datapath'/data.csv' using 1:2 with lines


I did find this thread. However I was unable to modify it to my needs. Can someone help me, please?





MWE



documentclass{article}

usepackage[latin1]{inputenx}
usepackage{filecontents}
usepackage[
miktex, %
subfolder, % generated graphs in a ”gnuplottex” subfolder
cleanup, % Delete the .gnuplot files after conversion
]{gnuplottex}

newcommand{datapath}{./ZZZ}

begin{document}

% This is the data file to be plotted from
begin{filecontents*}{datapath/data.csv}
Col1,Col2
0,0
1,1
end{filecontents*}

% This is the gnuplot script I would like to use the value of datapath in
begin{filecontents*}{datapath/script.gnuplot}
set key autotitle columnhead
set datafile separator "," # for csv-file
plot './ZZZ/data.csv' using 1:2 with lines
end{filecontents*}

begin{figure}[htbp]
centering
gnuplotloadfile[terminal=cairolatex]{datapath/script.gnuplot}
end{figure}

end{document}






macros expansion external-files gnuplottex






share|improve this question













share|improve this question











share|improve this question




share|improve this question










asked Feb 15 '18 at 17:02









krtekkrtek

905820




905820





bumped to the homepage by Community 7 mins ago


This question has answers that may be good or bad; the system has marked it active so that they can be reviewed.







bumped to the homepage by Community 7 mins ago


This question has answers that may be good or bad; the system has marked it active so that they can be reviewed.















  • Your MWE works fine for me on Linux with pdflatex.

    – Lars Kotthoff
    Feb 15 '18 at 17:22











  • Sure, it works great, no question. But I want to be able to use plot datapath'/data.csv' using 1:2 with lines instead of plot './ZZZ/data.csv' using 1:2 with lines. But how can I pass and expand the value of datapath inside the gnuplot document or store the content of datapath in a variable inside the gnuplot script as done in the post I linked to in my question?

    – krtek
    Feb 15 '18 at 17:30











  • See stackoverflow.com/q/12328603/923955 I guess you need to do renewcommand{gnuplotexe}{gnuplot -e "dirname=./ZZZ"} and use dirname in the script file. I don't know about quoting, though, perhaps you don't need them.

    – egreg
    Feb 15 '18 at 18:25





















  • Your MWE works fine for me on Linux with pdflatex.

    – Lars Kotthoff
    Feb 15 '18 at 17:22











  • Sure, it works great, no question. But I want to be able to use plot datapath'/data.csv' using 1:2 with lines instead of plot './ZZZ/data.csv' using 1:2 with lines. But how can I pass and expand the value of datapath inside the gnuplot document or store the content of datapath in a variable inside the gnuplot script as done in the post I linked to in my question?

    – krtek
    Feb 15 '18 at 17:30











  • See stackoverflow.com/q/12328603/923955 I guess you need to do renewcommand{gnuplotexe}{gnuplot -e "dirname=./ZZZ"} and use dirname in the script file. I don't know about quoting, though, perhaps you don't need them.

    – egreg
    Feb 15 '18 at 18:25



















Your MWE works fine for me on Linux with pdflatex.

– Lars Kotthoff
Feb 15 '18 at 17:22





Your MWE works fine for me on Linux with pdflatex.

– Lars Kotthoff
Feb 15 '18 at 17:22













Sure, it works great, no question. But I want to be able to use plot datapath'/data.csv' using 1:2 with lines instead of plot './ZZZ/data.csv' using 1:2 with lines. But how can I pass and expand the value of datapath inside the gnuplot document or store the content of datapath in a variable inside the gnuplot script as done in the post I linked to in my question?

– krtek
Feb 15 '18 at 17:30





Sure, it works great, no question. But I want to be able to use plot datapath'/data.csv' using 1:2 with lines instead of plot './ZZZ/data.csv' using 1:2 with lines. But how can I pass and expand the value of datapath inside the gnuplot document or store the content of datapath in a variable inside the gnuplot script as done in the post I linked to in my question?

– krtek
Feb 15 '18 at 17:30













See stackoverflow.com/q/12328603/923955 I guess you need to do renewcommand{gnuplotexe}{gnuplot -e "dirname=./ZZZ"} and use dirname in the script file. I don't know about quoting, though, perhaps you don't need them.

– egreg
Feb 15 '18 at 18:25







See stackoverflow.com/q/12328603/923955 I guess you need to do renewcommand{gnuplotexe}{gnuplot -e "dirname=./ZZZ"} and use dirname in the script file. I don't know about quoting, though, perhaps you don't need them.

– egreg
Feb 15 '18 at 18:25












1 Answer
1






active

oldest

votes


















0














You can do it with immediatewrite instead of filecontents*:



newwritetempfile

immediateopenouttempfile=datapath/script.gnuplot
immediatewritetempfile{set key autotitle columnhead;
set datafile separator ",";
plot 'datapath/data.csv' using 1:2 with lines}
immediatecloseouttempfile





share|improve this answer
























  • Thanks, but the data files and the gnuplot script exist as files at a defined location. filecontents* was only used here to provide a complete MWE.

    – krtek
    Feb 15 '18 at 17:56











  • I guess then I don't understand your question. How are you going to pass the location of the data if you don't write it to the script file?

    – Lars Kotthoff
    Feb 15 '18 at 17:58











  • That exactly is my question. In this post the value of the line color is stored in a macro and expanded into a variable s inside the gnuplot script without writing it. So I guess it is possible. I just wasn't able to modify the approach to my problem. I always get the error that the files cannot be found.

    – krtek
    Feb 15 '18 at 18:02











  • This would require modifying the gnuplottex source code to read and replace a macro in the file.

    – Lars Kotthoff
    Feb 15 '18 at 18:11












Your Answer








StackExchange.ready(function() {
var channelOptions = {
tags: "".split(" "),
id: "85"
};
initTagRenderer("".split(" "), "".split(" "), channelOptions);

StackExchange.using("externalEditor", function() {
// Have to fire editor after snippets, if snippets enabled
if (StackExchange.settings.snippets.snippetsEnabled) {
StackExchange.using("snippets", function() {
createEditor();
});
}
else {
createEditor();
}
});

function createEditor() {
StackExchange.prepareEditor({
heartbeatType: 'answer',
autoActivateHeartbeat: false,
convertImagesToLinks: false,
noModals: true,
showLowRepImageUploadWarning: true,
reputationToPostImages: null,
bindNavPrevention: true,
postfix: "",
imageUploader: {
brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
allowUrls: true
},
onDemand: true,
discardSelector: ".discard-answer"
,immediatelyShowMarkdownHelp:true
});


}
});














draft saved

draft discarded


















StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2ftex.stackexchange.com%2fquestions%2f415496%2fgnuplottex-pass-latex-command-to-gnuplot-script%23new-answer', 'question_page');
}
);

Post as a guest















Required, but never shown

























1 Answer
1






active

oldest

votes








1 Answer
1






active

oldest

votes









active

oldest

votes






active

oldest

votes









0














You can do it with immediatewrite instead of filecontents*:



newwritetempfile

immediateopenouttempfile=datapath/script.gnuplot
immediatewritetempfile{set key autotitle columnhead;
set datafile separator ",";
plot 'datapath/data.csv' using 1:2 with lines}
immediatecloseouttempfile





share|improve this answer
























  • Thanks, but the data files and the gnuplot script exist as files at a defined location. filecontents* was only used here to provide a complete MWE.

    – krtek
    Feb 15 '18 at 17:56











  • I guess then I don't understand your question. How are you going to pass the location of the data if you don't write it to the script file?

    – Lars Kotthoff
    Feb 15 '18 at 17:58











  • That exactly is my question. In this post the value of the line color is stored in a macro and expanded into a variable s inside the gnuplot script without writing it. So I guess it is possible. I just wasn't able to modify the approach to my problem. I always get the error that the files cannot be found.

    – krtek
    Feb 15 '18 at 18:02











  • This would require modifying the gnuplottex source code to read and replace a macro in the file.

    – Lars Kotthoff
    Feb 15 '18 at 18:11
















0














You can do it with immediatewrite instead of filecontents*:



newwritetempfile

immediateopenouttempfile=datapath/script.gnuplot
immediatewritetempfile{set key autotitle columnhead;
set datafile separator ",";
plot 'datapath/data.csv' using 1:2 with lines}
immediatecloseouttempfile





share|improve this answer
























  • Thanks, but the data files and the gnuplot script exist as files at a defined location. filecontents* was only used here to provide a complete MWE.

    – krtek
    Feb 15 '18 at 17:56











  • I guess then I don't understand your question. How are you going to pass the location of the data if you don't write it to the script file?

    – Lars Kotthoff
    Feb 15 '18 at 17:58











  • That exactly is my question. In this post the value of the line color is stored in a macro and expanded into a variable s inside the gnuplot script without writing it. So I guess it is possible. I just wasn't able to modify the approach to my problem. I always get the error that the files cannot be found.

    – krtek
    Feb 15 '18 at 18:02











  • This would require modifying the gnuplottex source code to read and replace a macro in the file.

    – Lars Kotthoff
    Feb 15 '18 at 18:11














0












0








0







You can do it with immediatewrite instead of filecontents*:



newwritetempfile

immediateopenouttempfile=datapath/script.gnuplot
immediatewritetempfile{set key autotitle columnhead;
set datafile separator ",";
plot 'datapath/data.csv' using 1:2 with lines}
immediatecloseouttempfile





share|improve this answer













You can do it with immediatewrite instead of filecontents*:



newwritetempfile

immediateopenouttempfile=datapath/script.gnuplot
immediatewritetempfile{set key autotitle columnhead;
set datafile separator ",";
plot 'datapath/data.csv' using 1:2 with lines}
immediatecloseouttempfile






share|improve this answer












share|improve this answer



share|improve this answer










answered Feb 15 '18 at 17:52









Lars KotthoffLars Kotthoff

49836




49836













  • Thanks, but the data files and the gnuplot script exist as files at a defined location. filecontents* was only used here to provide a complete MWE.

    – krtek
    Feb 15 '18 at 17:56











  • I guess then I don't understand your question. How are you going to pass the location of the data if you don't write it to the script file?

    – Lars Kotthoff
    Feb 15 '18 at 17:58











  • That exactly is my question. In this post the value of the line color is stored in a macro and expanded into a variable s inside the gnuplot script without writing it. So I guess it is possible. I just wasn't able to modify the approach to my problem. I always get the error that the files cannot be found.

    – krtek
    Feb 15 '18 at 18:02











  • This would require modifying the gnuplottex source code to read and replace a macro in the file.

    – Lars Kotthoff
    Feb 15 '18 at 18:11



















  • Thanks, but the data files and the gnuplot script exist as files at a defined location. filecontents* was only used here to provide a complete MWE.

    – krtek
    Feb 15 '18 at 17:56











  • I guess then I don't understand your question. How are you going to pass the location of the data if you don't write it to the script file?

    – Lars Kotthoff
    Feb 15 '18 at 17:58











  • That exactly is my question. In this post the value of the line color is stored in a macro and expanded into a variable s inside the gnuplot script without writing it. So I guess it is possible. I just wasn't able to modify the approach to my problem. I always get the error that the files cannot be found.

    – krtek
    Feb 15 '18 at 18:02











  • This would require modifying the gnuplottex source code to read and replace a macro in the file.

    – Lars Kotthoff
    Feb 15 '18 at 18:11

















Thanks, but the data files and the gnuplot script exist as files at a defined location. filecontents* was only used here to provide a complete MWE.

– krtek
Feb 15 '18 at 17:56





Thanks, but the data files and the gnuplot script exist as files at a defined location. filecontents* was only used here to provide a complete MWE.

– krtek
Feb 15 '18 at 17:56













I guess then I don't understand your question. How are you going to pass the location of the data if you don't write it to the script file?

– Lars Kotthoff
Feb 15 '18 at 17:58





I guess then I don't understand your question. How are you going to pass the location of the data if you don't write it to the script file?

– Lars Kotthoff
Feb 15 '18 at 17:58













That exactly is my question. In this post the value of the line color is stored in a macro and expanded into a variable s inside the gnuplot script without writing it. So I guess it is possible. I just wasn't able to modify the approach to my problem. I always get the error that the files cannot be found.

– krtek
Feb 15 '18 at 18:02





That exactly is my question. In this post the value of the line color is stored in a macro and expanded into a variable s inside the gnuplot script without writing it. So I guess it is possible. I just wasn't able to modify the approach to my problem. I always get the error that the files cannot be found.

– krtek
Feb 15 '18 at 18:02













This would require modifying the gnuplottex source code to read and replace a macro in the file.

– Lars Kotthoff
Feb 15 '18 at 18:11





This would require modifying the gnuplottex source code to read and replace a macro in the file.

– Lars Kotthoff
Feb 15 '18 at 18:11


















draft saved

draft discarded




















































Thanks for contributing an answer to TeX - LaTeX Stack Exchange!


  • Please be sure to answer the question. Provide details and share your research!

But avoid



  • Asking for help, clarification, or responding to other answers.

  • Making statements based on opinion; back them up with references or personal experience.


To learn more, see our tips on writing great answers.




draft saved


draft discarded














StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2ftex.stackexchange.com%2fquestions%2f415496%2fgnuplottex-pass-latex-command-to-gnuplot-script%23new-answer', 'question_page');
}
);

Post as a guest















Required, but never shown





















































Required, but never shown














Required, but never shown












Required, but never shown







Required, but never shown

































Required, but never shown














Required, but never shown












Required, but never shown







Required, but never shown







Popular posts from this blog

Why does my Macbook overheat and use so much CPU and energy when on YouTube?Why do so many insist on using...

Puerta de Hutt Referencias Enlaces externos Menú de navegación15°58′00″S 5°42′00″O /...

How to prevent page numbers from appearing on glossaries?How to remove a dot and a page number in the...