minimális grafika számolással

Fórumok

Sziasztok.

Adott egy számegyenes, mely balról jobbra csökkenő számértékeket (pozitív egészeket) tartalmaz. Azt szeretném, hogy a megadott intervallumon belül, melyeket paraméterként adnék meg, felossza modulo 10 a szakaszt.

A következő problémám, hogy a felosztott értékekhez számot szeretnék rendelni, azaz ha intervallumon belül egy újabb kiírást írnék, akkor az a megfelelő helyen jelenjen meg.

Sajnos hiába kerestem ilyen tex modulokat, sehol sem találtam, csak olyn idővonalakat, melyek balról jobbra növekednek. (képtelen voltam még a bonyolultabbakat is átírni)

Íme a kód, melyet eredetileg xfiggel csináltam:


\setlength{\unitlength}{3947sp}%
%
\begingroup\makeatletter\ifx\SetFigFont\undefined%
\gdef\SetFigFont#1#2#3#4#5{%
  \reset@font\fontsize{#1}{#2pt}%
  \fontfamily{#3}\fontseries{#4}\fontshape{#5}%
  \selectfont}%
\fi\endgroup%
\begin{picture}(4674,327)(1939,-2101)
\thinlines
{\color[rgb]{0,0,0}\put(1951,-1861){\line( 1, 0){4650}}
}%
{\color[rgb]{0,0,0}\multiput(6451,-1786)(7.50000,-3.75000){21}{\makebox(1.6667,11.6667){\tiny.}}
\multiput(6601,-1861)(-7.50000,-3.75000){21}{\makebox(1.6667,11.6667){\tiny.}}
}%
{\color[rgb]{0,0,0}\put(2176,-1861){\makebox(1.6667,11.6667){\tiny.}}
}%
{\color[rgb]{0,0,0}\put(2176,-1861){\makebox(1.6667,11.6667){\tiny.}}
}%
{\color[rgb]{0,0,0}\put(2176,-1861){\makebox(1.6667,11.6667){\tiny.}}
}%
{\color[rgb]{0,0,0}\put(2701,-1786){\line( 0,-1){ 75}}
}%
{\color[rgb]{0,0,0}\put(5551,-1786){\line( 0,-1){ 75}}
}%
{\color[rgb]{0,0,0}\put(2701,-1786){\line( 1, 0){2850}}
}%
\put(2476,-2090){\makebox(0,0)[lb]{\smash{{\SetFigFont{12}{14.4}{\rmdefault}{\mddefault}{\updefault}{\color[rgb]{0,0,0}1650}%
}}}}
\put(5326,-2090){\makebox(0,0)[lb]{\smash{{\SetFigFont{12}{14.4}{\rmdefault}{\mddefault}{\updefault}{\color[rgb]{0,0,0}1610}%
}}}}
\end{picture}%

Hozzászólások

Nem egészen értem, hogy pontosan mit szeretnél, de a pgfplots csomag szerintem egyszerűbb lenne:

\documentclass[12pt]{article}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage[magyar]{babel}
\usepackage[margin=1.5cm]{geometry}
\usepackage{indentfirst}
\usepackage{pgfplots}
\begin{document}
\begin{tikzpicture}
  \begin{axis}[
    width=20cm,
    axis x line=middle,
    axis y line=none,
    xmin=-70,xmax=60,
    domain=-3:5,
    xtick={-40,-30,...,50},
    x dir=reverse
  ]
  \addplot coordinates { (0,0) };
  \end{axis}
\end{tikzpicture}
\end{document}

Kár, hogy eddig nem ebbe mélyedtem bele.
Majd ezt is megnézem.
Most így áll a dolog:

\usepackage{pstricks}

\def\fkm#1#2{
\setlength{\unitlength}{3947sp}%
\begin{picture}(4674,327)(1939,-2101)
\thinlines
{\color[rgb]{0,0,0}\put(1951,-1861){\vector( 1, 0){4650}}}
{\color[rgb]{0,0,0}\put(2701,-1786){\line( 1, 0){2850}}}
{\color[rgb]{0,0,0}\put(2701,-1786){\line( 0,-1){ 75}}}
{\color[rgb]{0,0,0}\put(5551,-1786){\line( 0,-1){ 75}}}
\put(2476,-2020){\makebox(0,0)[lb]{\scriptsize #1 }}
\put(5326,-2020){\makebox(0,0)[lb]{\scriptsize #2 }}
\end{picture}

...és ezt az \fkm{1660}{1640}
-nel működtethetem. Még finomítani kell, de nagyjából már értem, mi micsoda.

> Kár, hogy eddig nem ebbe mélyedtem bele.
Eddigi tapasztalatom azt mutatja, hogy a (részemről) felmerülő igény már olyannál is felmerült, aki érzett magában elég erőt-késztetést-tudást, hogy csináljon csomagot. Azaz szerintem a nem túlzottan különleges igényre már van (legalább) egy csomag, amivel néhány sorral a probléma egyszerűen megoldható. Először mindig érdemes keresni, legfeljebb a sikertelenség után érdemes csak manuálisan megoldani.

Most meg itt vagyok a Nagy Kék latexkönyv mellett, és pár perc alatt ezt alkottam:

\begin{picture}(0,0)(-5,-5)
\thicklines
\put(-5,0){\vector(1,0){100}}
%\multiput(-1,2.5)(0,2.5){10}{\line(1,0){2}} %fuggoleges
\multiput(2,0)(4,0){8}{\line(0,1){2}} %vizszintes
\put(-2,0){\circle{4}}
\put(-2,-8){\makebox(0,0){\scriptsize{start}}}
\put(80,0){\circle{4}}
\put(80,-8){\makebox(0,0){\scriptsize{end}}}
\end{picture}

Ezt meg már tényleg soronként értem :)

Még szórakozom vele, makeboxok is létrehozhatók