LaTeX - pakiet TiKz + Gnuplot
- AiDi
- Moderator
- Posty: 3843
- Rejestracja: 25 maja 2009, o 22:58
- Płeć: Mężczyzna
- Lokalizacja: Warszawa
- Podziękował: 45 razy
- Pomógł: 702 razy
LaTeX - pakiet TiKz + Gnuplot
Czy ktoś używa Gnuplota do rysowania wykresów funkcji w pakiecie TiKz? Ja próbuję i mi to ustrojstwo nie działa. Wpisałem sobie przykładowy kod z manuala, program wszystko kompiluje, pojawia się wszystko oprócz samych wykresów. Żadne błędy nie wyskakują. Sam się zastanawiam jak to właściwie ma działać, skąd LaTeX ma wiedzieć gdzie mam zainstalowanego Gnuplota. Szukałem w googlach, ale nie zrozumiałem kompletnie nic z tego co znalazłem, bo praktycznie wszędzie było to samo co w manualu. Jest ktoś w stanie mi pomóc? Nie chce wklejać wykresów ze źródeł zewnętrznych
- Szemek
- Użytkownik
- Posty: 4819
- Rejestracja: 10 paź 2006, o 23:03
- Płeć: Mężczyzna
- Lokalizacja: Gdańsk
- Podziękował: 43 razy
- Pomógł: 1407 razy
LaTeX - pakiet TiKz + Gnuplot
Pod przykładem:
jest dosyć długa dyskusja.
U mnie zadziałał wariant
jest dosyć długa dyskusja.
U mnie zadziałał wariant
Kod: Zaznacz cały
latex -shell-escape -enable-write18 plik.tex
dvips plik.dvi
ps2pdf plik.ps
W sumie dobrze byłoby mieć wszystko w jednym miejscu, ale równie dobrze możesz wygenerować wykresy w gnuplocie i potem zaimportować grafikę.Nie chce wklejać wykresów ze źródeł zewnętrznych
- AiDi
- Moderator
- Posty: 3843
- Rejestracja: 25 maja 2009, o 22:58
- Płeć: Mężczyzna
- Lokalizacja: Warszawa
- Podziękował: 45 razy
- Pomógł: 702 razy
LaTeX - pakiet TiKz + Gnuplot
Hm, to pytanie mam Bo właściwie z tego bierze się mój cały problem. Jak mam rozumieć ten kod? Gdzie go wcisnąć? Np. "latex -shell-escape -enable-write18 plik.tex". Dyskusji przejrzałem trochę, ale właśnie nie wiem gdzie te kody wpisywać, bo próbowałem na milion sposobów i nic
- Szemek
- Użytkownik
- Posty: 4819
- Rejestracja: 10 paź 2006, o 23:03
- Płeć: Mężczyzna
- Lokalizacja: Gdańsk
- Podziękował: 43 razy
- Pomógł: 1407 razy
LaTeX - pakiet TiKz + Gnuplot
Wiersz poleceń w Windowsie (terminal w Linuksie).właśnie nie wiem gdzie te kody wpisywać, bo próbowałem na milion sposobów i nic
W wierszu poleceń musisz zmienić ścieżkę do katalogu, w którym znajduje się plik *.tex i wtedy możesz wykonać podane wyżej polecenia.
W niektórych edytorach, można ustawić listę instrukcji do budowania pliku PDF.
- AiDi
- Moderator
- Posty: 3843
- Rejestracja: 25 maja 2009, o 22:58
- Płeć: Mężczyzna
- Lokalizacja: Warszawa
- Podziękował: 45 razy
- Pomógł: 702 razy
LaTeX - pakiet TiKz + Gnuplot
Ok. To już zrobiłem, ale MikTeX/TiKz dalej nie widzi Gnuplota. Program sam to znajduje czy trzeba mu wskazać? Jedyne na co trafiłem, że może trzeba zmienić nazwę z wgnuplot, na gnuplot, albo coś. Ale nie chce mi się wierzyć, że program przekopuje się przez wszystko na dysku, żeby poszukać tego...
- Szemek
- Użytkownik
- Posty: 4819
- Rejestracja: 10 paź 2006, o 23:03
- Płeć: Mężczyzna
- Lokalizacja: Gdańsk
- Podziękował: 43 razy
- Pomógł: 1407 razy
LaTeX - pakiet TiKz + Gnuplot
Sprawdź w wierszu poleceń czy działaAiDi pisze:Ale nie chce mi się wierzyć, że program przekopuje się przez wszystko na dysku, żeby poszukać tego...
wgnuplot
abo gnuplot
.Jeśli działa tylko
wgnuplot
, to spróbuj zmienić nazwę na gnuplot
.Jeśli oba polecenia nie uruchamiają gnuplota, to musisz dodać do zmiennej środowiskowej
PATH
ścieżkę do katalogu, w którym znajduje się plik wykonywalny gnuplot.Jak to dokładnie zrobić, wyszukaj w Google.
- AiDi
- Moderator
- Posty: 3843
- Rejestracja: 25 maja 2009, o 22:58
- Płeć: Mężczyzna
- Lokalizacja: Warszawa
- Podziękował: 45 razy
- Pomógł: 702 razy
LaTeX - pakiet TiKz + Gnuplot
OMG, działa Dzięki!
-- 14 maja 2012, o 18:41 --
No dobra, mam kolejny problem. Po pierwsze: używając formuły z gnuplota, nie mogę narysować sinusa dla wartości ujemnych x. Jakkolwiek bym nie zmieniał wartości "domain". Ponadto to:
tak samo, wszystkie wykresy wyglądają u mnie tak samo. Jedynie co program robi to rozróżnia między funkcjami, ale przesuwać i skalować się nie da. Próbowałem rysować funkcje inaczej, wykorzystując coś takiego:
\draw plot (\x, {sin(\x r)});
bo znalazłem to w manualu (swoją drogą nie wiem czemu wcześniej nie widziałem). Ale tu też są problemy, nie da się skalować funkcji. I nie wiem po co to 'r' w argumencie...
-- 14 maja 2012, o 18:41 --
No dobra, mam kolejny problem. Po pierwsze: używając formuły z gnuplota, nie mogę narysować sinusa dla wartości ujemnych x. Jakkolwiek bym nie zmieniał wartości "domain". Ponadto to:
tak samo, wszystkie wykresy wyglądają u mnie tak samo. Jedynie co program robi to rozróżnia między funkcjami, ale przesuwać i skalować się nie da. Próbowałem rysować funkcje inaczej, wykorzystując coś takiego:
\draw plot (\x, {sin(\x r)});
bo znalazłem to w manualu (swoją drogą nie wiem czemu wcześniej nie widziałem). Ale tu też są problemy, nie da się skalować funkcji. I nie wiem po co to 'r' w argumencie...
- Szemek
- Użytkownik
- Posty: 4819
- Rejestracja: 10 paź 2006, o 23:03
- Płeć: Mężczyzna
- Lokalizacja: Gdańsk
- Podziękował: 43 razy
- Pomógł: 1407 razy
LaTeX - pakiet TiKz + Gnuplot
W dokumencie *.tex z podanego linku, oprócz dziedziny (domain) trzeba jeszcze zmienić przedział rysowania. Z grubsza zmiany wyglądają tak:
Pamiętaj o usunięciu wszystkich plików tymczasowych przed ponownym generowaniem pliku *.pdf.
Kod: Zaznacz cały
egin{tikzpicture}[domain=-8:8]
...
% DRAW the graph of the function from here on
draw[very thin,color=gray] (-7.9,minY) grid (7.9,maxY);% GRID use minY & maxY
draw[->] (-8.2,0) -- (8.2,0) node[right] {$x$};
draw[->] (0,minY) -- (0,maxY) node[above] {$f(x)$};% y axis use minY & maxY too
draw[smooth,samples=200,color=blue] plot function{(cA)* (cos((cC)*x+(cD))) + cB}·
>> node[right] {$f(x) = cA{} . cos(cC{} . x + cD{}) + cB{}$};
...
end{tikzpicture}