added Evalbase.h again
This commit is contained in:
Binary file not shown.
@@ -117,7 +117,7 @@
|
||||
|
||||
|
||||
% gfx include folder
|
||||
\graphicspath{ {gfx/baro/},{gfx/graph/},{gfx/paths/},{gfx/eval/},{gfx/},{gfx/grid/}}
|
||||
\graphicspath{ {gfx/baro/},{gfx/graph/},{gfx/paths/},{gfx/eval/},{gfx/},{gfx/grid/},{gfx/activity/}}
|
||||
|
||||
|
||||
% correct bad hyphenation here
|
||||
@@ -145,12 +145,12 @@
|
||||
% affiliations
|
||||
\author{
|
||||
|
||||
\IEEEauthorblockN{Frank Ebner, Toni Fetzer and Frank Deinzer}%
|
||||
\IEEEauthorblockN{Toni Fetzer, Frank Ebner, and Frank Deinzer}%
|
||||
\IEEEauthorblockA{%
|
||||
Faculty of Computer Science and Business Information Systems\\
|
||||
University of Applied Sciences W\"urzburg-Schweinfurt\\
|
||||
W\"urzburg, Germany\\
|
||||
\{frank.ebner, toni.fetzer, frank.deinzer\}@fhws.de\\
|
||||
\{toni.fetzer, frank.ebner, frank.deinzer\}@fhws.de\\
|
||||
}
|
||||
\and
|
||||
|
||||
|
||||
@@ -1,3 +1,9 @@
|
||||
\section{Conclusion}
|
||||
|
||||
map information into smoothing. better way and faster then just dijkstra. compensate big jumps caused by wifi. better method for estimation and drawing of particles in backward simulation. more advanced smoothing transition. not used evaluating using the observations, but using the given information for more advanced approaches.
|
||||
|
||||
\begin{figure}
|
||||
\input{gfx/activity/activity_over_time}
|
||||
\caption{activity recognition}
|
||||
\label{fig:activityRecognition}
|
||||
\end{figure}
|
||||
|
||||
@@ -15,11 +15,11 @@ Additional improvements can be achieved by using environmental information about
|
||||
In most cases, probabilistic methods are used to incorporate those highly different sensor types.
|
||||
Here, a probability distribution describes the pedestrian's possible whereabouts and therefore the uncertainty of the system.
|
||||
Drawing
|
||||
\commentByLukas{Drawing samples oder sampling}
|
||||
%\commentByLukas{Drawing samples oder sampling}
|
||||
from a probability distribution and
|
||||
\commentByLukas{Willst du hier das Samplen erwaehnen? Es kommt so ein bisschen aus dem Nichts und man kann es gerade nur schwer einordnen}
|
||||
\commentByToni{Ich möchte hier auf Monte Carlo ueberleiten. Warum macht man das ueberhaupt? Ich finde das umschreibt das ganz gut. alles andere kostet nur unfassbar viel platz wie ich finde.}
|
||||
\commentByFrank{vlt als Kompromiss einfach etwas umstellen/kuerzen: Describing/Modelling (multimodal) probability densities analytically is in most cases...}
|
||||
%\commentByLukas{Willst du hier das Samplen erwaehnen? Es kommt so ein bisschen aus dem Nichts und man kann es gerade nur schwer einordnen}
|
||||
%\commentByToni{Ich möchte hier auf Monte Carlo ueberleiten. Warum macht man das ueberhaupt? Ich finde das umschreibt das ganz gut. alles andere kostet nur unfassbar viel platz wie ich finde.}
|
||||
%\commentByFrank{vlt als Kompromiss einfach etwas umstellen/kuerzen: Describing/Modelling (multimodal) probability densities analytically is in most cases...}
|
||||
finding an analytical solution for densities is in most cases a difficult task, especially in case of time sequential, non-linear and non-Gaussian models.
|
||||
Due to the high complexity of the human movement, we consider indoor localisation as such.
|
||||
|
||||
@@ -38,9 +38,9 @@ For example, a barometer can be used to determine the probability of being on a
|
||||
Despite the many advances made in the last years, nearly all systems suffer from more or less the same problems.
|
||||
Like mentioned before, PDR suffers from an accumulating bias,
|
||||
the signal of Wi-Fi gets attenuated by walls
|
||||
\commentByFrank{falls noch platz ist: noch mehr nachteile :P \docWIFI{} location estimation strongly depends on the quality of the signal-strength estimation model (oder fingerprinting) and the way the smartphone is held}
|
||||
%\commentByFrank{falls noch platz ist: noch mehr nachteile :P \docWIFI{} location estimation strongly depends on the quality of the signal-strength estimation model (oder fingerprinting) and the way the smartphone is held}
|
||||
and the barometric pressure is highly affected by weather patterns and humidity
|
||||
\commentByFrank{spontane fenster/tuer oeffnung}
|
||||
%\commentByFrank{spontane fenster/tuer oeffnung}
|
||||
\cite{Binghao13-UBI}.
|
||||
That is the reason for the use of statistical methods in the first place. Nevertheless, there are even more profound problems regarding the whole position estimation procedure.
|
||||
|
||||
@@ -53,7 +53,7 @@ A solution to recover from such filter divergences faster, involves methods to r
|
||||
However, even this can not completely prevent delays.
|
||||
Another reason for possible time delays are slow sensor updates.
|
||||
For example, most mobile devices restrict the Wi-Fi module to update only every few seconds, to save on battery.
|
||||
|
||||
%
|
||||
\begin{figure}[t]
|
||||
\centering
|
||||
\def\svgwidth{0.9\columnwidth}
|
||||
@@ -64,12 +64,12 @@ For example, most mobile devices restrict the Wi-Fi module to update only every
|
||||
The most likely position (green line) is estimated somewhere in-between. After a right turn, the distribution slowly starts to recover its unimodality.}
|
||||
\label{fig:multimodalPath}
|
||||
\end{figure}
|
||||
|
||||
%
|
||||
Further critical problems arise from multimodal distributions.
|
||||
Those are caused by multiple possible position estimates.
|
||||
Fig. \ref{fig:multimodalPath} illustrates an example where a floor gets separated by a wall.
|
||||
Due to inaccurate measurements and a PDR approach for evaluating the movement, the distribution splits apart.
|
||||
Therefore, the most likely position \commentByFrank{wenn avg ueber alle particles, was ja default ist} is somewhere in-between.
|
||||
Therefore, the weighted average position is somewhere in-between.
|
||||
Only after the pedestrian turns right, the distribution is again unimodal, since moving through walls is impossible.
|
||||
As one can imagine, this can lead to serious problems in big indoor environments.
|
||||
Such a situation can be improved by incorporating future measurements (e.g. the right turn) or predictive information (e.g. the most likely path) to the filtering procedure \cite{Ebner-16}.
|
||||
@@ -89,12 +89,10 @@ The main goal is to solve above mentioned problems and to investigate new possib
|
||||
All of our contributions are supported by an extensive experimental evaluation.
|
||||
|
||||
|
||||
\commentByLukas{In der Einleitung sollte an einer Stelle ganz klar die Contributions der Arbeit herausgestellt werden. Vielleicht irgendwie sowas:
|
||||
The contributions of this work are as follows:
|
||||
Firstly, we extend current smoothing methods for indoor localisation to resolve multimodalities during the state estimation process. Secondly, we incorporate the knowledge of the user's destination as a-priori knowledge. Thirdly, we enrich the state transition model with an activity recognition to distinguish between walking, standing and walking stairs. All of our contributions are supported by an extensive experimental evaluation. }
|
||||
%\commentByLukas{In der Einleitung sollte an einer Stelle ganz klar die Contributions der Arbeit herausgestellt werden. Vielleicht irgendwie sowas: The contributions of this work are as follows:Firstly, we extend current smoothing methods for indoor localisation to resolve multimodalities during the state estimation process. Secondly, we incorporate the knowledge of the user's destination as a-priori knowledge. Thirdly, we enrich the state transition model with an activity recognition to distinguish between walking, standing and walking stairs. All of our contributions are supported by an extensive experimental evaluation. }
|
||||
|
||||
\commentByToni{Steht doch direkt einen Absatz drueber nur halt kein plakatives "The contributions of " steht. Nur das Smoothing ist die Contribution meiner Meinung nach. Das prior knowledge ist ausm fusion paper. lediglich die activity rec fehlte. habe es ergänzt :). da bin ich mir aber noch nicht sicher... es wird ja nicht wirklich evaluiert sondern eher als "gegeben" angesehen. vielleicht dann auch eher so beschreiben?}
|
||||
\commentByFrank{finds gut so}
|
||||
%\commentByToni{Steht doch direkt einen Absatz drueber nur halt kein plakatives "The contributions of " steht. Nur das Smoothing ist die Contribution meiner Meinung nach. Das prior knowledge ist ausm fusion paper. lediglich die activity rec fehlte. habe es ergänzt :). da bin ich mir aber noch nicht sicher... es wird ja nicht wirklich evaluiert sondern eher als "gegeben" angesehen. vielleicht dann auch eher so beschreiben?}
|
||||
%\commentByFrank{finds gut so}
|
||||
|
||||
|
||||
|
||||
|
||||
@@ -21,7 +21,7 @@ On the other hand, fixed-interval smoothing requires all observations until time
|
||||
The origin of MC smoothing can be traced back to Genshiro Kitagawa.
|
||||
In his work \cite{kitagawa1996monte} he presented the simplest form of smoothing as an extension to the particle filter.
|
||||
This algorithm is often called the filter-smoother since it runs online and a smoothing is provided while filtering.
|
||||
\commentByFrank{das mit dem weighted paths irritiert mich etwas. war das original work auch fuer etwas, wo pfade im spiel waren? weils halt gar so gut passt. ned dass da begrifflichkeiten durcheinander kommen. beim lesen fehlt mir das beim 1. anlauf was damit gemeint ist}
|
||||
%\commentByFrank{das mit dem weighted paths irritiert mich etwas. war das original work auch fuer etwas, wo pfade im spiel waren? weils halt gar so gut passt. ned dass da begrifflichkeiten durcheinander kommen. beim lesen fehlt mir das beim 1. anlauf was damit gemeint ist}
|
||||
This approach uses the particle filter steps to update weighted paths $\{(\vec{X}_{1:t}^i , W^i_t)\}^N_{i=1}$, producing an accurate approximation of the filtering posterior $p(\vec{q}_{t} \mid \vec{o}_{1:t})$ with a computational complexity of only $\mathcal{O}(N)$.
|
||||
However, it gives a poor representation of previous states due a monotonic decrease of distinct particles caused by resampling of each weighted path \cite{Doucet11:ATO}.
|
||||
Based on this, more advanced methods like the forward-backward smoother \cite{doucet2000} and backward simulation \cite{Godsill04:MCS} were developed.
|
||||
@@ -29,41 +29,39 @@ Both methods are running backwards in time to reweight a set of particles recurs
|
||||
Algorithmic details will be shown in section \ref{sec:smoothing}.
|
||||
|
||||
%wo werden diese eingesetzt, paar beispiele. offline, online
|
||||
\commentByFrank{wenn du meinst, 'bei indoor wirds NICHT verwendet' dann ist 'as' das falsche. wuerde auch 'got' statt 'gets' verwenden}
|
||||
In recent years, smoothing gets attention mainly in other areas as indoor localisation.
|
||||
%\commentByFrank{wenn du meinst, 'bei indoor wirds NICHT verwendet' dann ist 'as' das falsche. wuerde auch 'got' statt 'gets' verwenden}
|
||||
In recent years, smoothing got attention mainly in other areas than indoor localisation.
|
||||
The early work of \cite{isard1998smoothing} demonstrates the possibilities of smoothing for visual tracking.
|
||||
They used a combination of the CONDENSATION particle filter with a forward-backward smoother.
|
||||
Based on this pioneering approach, many different solutions for visual and multi-target tracking have been developed \cite{Perez2004}.
|
||||
For example, in \cite{Platzer:2008} a particle smoother is used to reduce multimodalities in a blood flow simulation for human vessels. The authors of \cite{Hu2014} use a smoother to overcoming the problem of particle impoverishment while predicting the Remaining Useful Life (RUL) of equipment (e.g. a Lithium-ion battery).
|
||||
|
||||
%smoothing im bezug auf indoor
|
||||
\commentByFrank{their -> there?}
|
||||
Nevertheless, their are some promising approaches for indoor localisation systems as well.
|
||||
Nevertheless, there are some promising approaches for indoor localisation systems as well.
|
||||
For example \cite{Nurminen2014} deployed a fixed-interval forward-backward smoother to improve the position estimation for non-real-time applications.
|
||||
They combined Wi-Fi, step and turn detection, a simple line-of-sight model for floor plan restrictions and the barometric change within a particle filter.
|
||||
The state transition samples a new state based on the heading change, altitude change and a fixed step length.
|
||||
The experiments of \cite{Nurminen2014} clearly emphasize the benefits of smoothing techniques. The estimation error could be decreased significantly.
|
||||
\commentByFrank{treated? behandelt? examined? evaluated?}
|
||||
However, a fixed-lag smoother was treated only in theory.
|
||||
However, a fixed-lag smoother was discussed only in theory.
|
||||
|
||||
In the work of \cite{Paul2009} both fixed-interval and fixed-lag smoothing were presented.
|
||||
They implemented Wi-Fi, binary infra-red motion sensors, binary foot-switches and a potential field for floor plan restrictions.
|
||||
Those sensors were incorporated using a sigma-point Kalman filter in combination with a forward-backward smoother.
|
||||
\commentByFrank{then -> than?}
|
||||
It was also proven by \cite{Paul2009}, that the fixed-lag smoother is slightly less accurate then the fixed-interval smoother, as one would expect from the theoretical foundation.
|
||||
It was also proven by \cite{Paul2009}, that the fixed-lag smoother is slightly less accurate than the fixed-interval smoother, as one would expect from the theoretical foundation.
|
||||
Unfortunately, even a sigma-point Kalman filters is after all just a linearisation and therefore not as flexible and suited for the complex problem of indoor localisation as a non-linear estimator like a particle filter.
|
||||
\commentByToni{Kann das jemand nochmal verifizieren? Das mit dem Kalman Filter. Danke.}
|
||||
\commentByLukas{Ich wuerde den Satz ganz weglassen. Ansonsten musst du angeben, wo die eigentlichen Probleme liegen, also z.B. in welchen konkreten Situation das Kalman Filter nicht mehr funktioniert usw. So ist es jetzt erstmal nur eine Behauptung ohne jeglichen Hintergrund.}
|
||||
\commentByToni{Ich bin mir nicht sicher ob das eine Behauptung ohne jeglichen Hintergrund ist. Meiner Meinung nach ist das ziemlich weitreichend bekannt. Finde den Satz persoenlich ganz gut, weil er uns deutlich von dieser Arbeit abgrenzt und das ist wichtig.}
|
||||
\commentByFrank{hab zwar ka was das ist, aber vermutlich ist es auch normal-dist also unimodal? dann verweisen wir doch einfach auf fig1 mit dem zusatz: 'sowas geht garned erst'}.
|
||||
%\commentByToni{Kann das jemand nochmal verifizieren? Das mit dem Kalman Filter. Danke.}
|
||||
%\commentByLukas{Ich wuerde den Satz ganz weglassen. Ansonsten musst du angeben, wo die eigentlichen Probleme liegen, also z.B. in welchen konkreten Situation das Kalman Filter nicht mehr funktioniert usw. So ist es jetzt erstmal nur eine Behauptung ohne jeglichen Hintergrund.}
|
||||
%\commentByToni{Ich bin mir nicht sicher ob das eine Behauptung ohne jeglichen Hintergrund ist. Meiner Meinung nach ist das ziemlich weitreichend bekannt. Finde den Satz persoenlich ganz gut, weil er uns deutlich von dieser Arbeit abgrenzt und das ist wichtig.}
|
||||
%\commentByFrank{hab zwar ka was das ist, aber vermutlich ist es auch normal-dist also unimodal? dann verweisen wir doch einfach auf fig1 mit dem zusatz: 'sowas geht garned erst'}.
|
||||
%\commentByToni{Sigma Point Kalman Filter können mit Multimodalitäten umgehen... auch wenn sie linearisieren. frag nicht wie das gehen soll.}
|
||||
Additionally, the Wi-Fi RSSI model requires known calibration points and is deployed using a remarkable number of access points for very small spaces.
|
||||
In our opinion this is not practical and does not suite real-world conditions.
|
||||
Since humans with a specific destination in mind do not tend to change their directions randomly, we would further recommend adding a PDR-based transition to draw samples in a more directed manner instead of scattering them randomly in every direction.
|
||||
|
||||
\commentByFrank{algorithmS?}
|
||||
\commentByFrank{'is able to use', oder 'will use'? gehts um die eval (will use), oder generell um die theorie und moeglichkeiten (is able to)}
|
||||
\commentByFrank{man koennte die reihenfolge vlt umstellen, erst die ganzen filtering sachen beschreiben, map, activity, ... und on top of that two smoothing algorithms both implemented as fixed-interval and fixed-lag?}
|
||||
The here presented approach is able to use two different smoothing algorithm, both implemented as fixed-interval and fixed-lag versions.
|
||||
%\commentByFrank{algorithmS?}
|
||||
%\commentByFrank{'is able to use', oder 'will use'? gehts um die eval (will use), oder generell um die theorie und moeglichkeiten (is able to)}
|
||||
%\commentByFrank{man koennte die reihenfolge vlt umstellen, erst die ganzen filtering sachen beschreiben, map, activity, ... und on top of that two smoothing algorithms both implemented as fixed-interval and fixed-lag?}
|
||||
The here presented approach will use two different smoothing algorithm, both implemented as fixed-interval and fixed-lag versions.
|
||||
Further, our localisation system presented in \cite{Ebner-16} enables us to walk stairs and thus going into the third dimension.
|
||||
Therefore, a regularly tessellated graph is utilized to avoid walls, detecting doors and recognizing stairs.
|
||||
Within this work, this is additionally supported by a simple classification that detects the activities unknown, standing, walking and walking stairs.
|
||||
|
||||
301
tex/gfx/activity/act_bergwerk_path4_nexus_simple_interval0.dat
Normal file
301
tex/gfx/activity/act_bergwerk_path4_nexus_simple_interval0.dat
Normal file
@@ -0,0 +1,301 @@
|
||||
0
|
||||
0
|
||||
0
|
||||
1
|
||||
1
|
||||
1
|
||||
1
|
||||
1
|
||||
1
|
||||
1
|
||||
1
|
||||
1
|
||||
1
|
||||
1
|
||||
1
|
||||
1
|
||||
1
|
||||
1
|
||||
2
|
||||
2
|
||||
2
|
||||
2
|
||||
2
|
||||
2
|
||||
2
|
||||
1
|
||||
1
|
||||
1
|
||||
1
|
||||
1
|
||||
2
|
||||
2
|
||||
2
|
||||
2
|
||||
2
|
||||
2
|
||||
2
|
||||
2
|
||||
2
|
||||
2
|
||||
2
|
||||
2
|
||||
2
|
||||
2
|
||||
2
|
||||
2
|
||||
2
|
||||
2
|
||||
4
|
||||
4
|
||||
2
|
||||
2
|
||||
2
|
||||
2
|
||||
2
|
||||
2
|
||||
2
|
||||
2
|
||||
2
|
||||
2
|
||||
2
|
||||
2
|
||||
2
|
||||
2
|
||||
2
|
||||
2
|
||||
2
|
||||
2
|
||||
2
|
||||
2
|
||||
2
|
||||
2
|
||||
2
|
||||
2
|
||||
2
|
||||
2
|
||||
2
|
||||
2
|
||||
2
|
||||
2
|
||||
2
|
||||
2
|
||||
2
|
||||
2
|
||||
2
|
||||
2
|
||||
2
|
||||
2
|
||||
2
|
||||
2
|
||||
2
|
||||
2
|
||||
2
|
||||
2
|
||||
2
|
||||
2
|
||||
2
|
||||
2
|
||||
2
|
||||
2
|
||||
2
|
||||
2
|
||||
2
|
||||
2
|
||||
4
|
||||
4
|
||||
4
|
||||
4
|
||||
4
|
||||
4
|
||||
4
|
||||
4
|
||||
2
|
||||
2
|
||||
2
|
||||
2
|
||||
2
|
||||
2
|
||||
2
|
||||
4
|
||||
4
|
||||
4
|
||||
4
|
||||
4
|
||||
4
|
||||
4
|
||||
4
|
||||
4
|
||||
4
|
||||
2
|
||||
2
|
||||
2
|
||||
2
|
||||
2
|
||||
2
|
||||
2
|
||||
2
|
||||
2
|
||||
2
|
||||
2
|
||||
2
|
||||
2
|
||||
2
|
||||
2
|
||||
2
|
||||
2
|
||||
2
|
||||
2
|
||||
2
|
||||
2
|
||||
2
|
||||
2
|
||||
2
|
||||
2
|
||||
2
|
||||
2
|
||||
2
|
||||
2
|
||||
2
|
||||
2
|
||||
2
|
||||
2
|
||||
2
|
||||
2
|
||||
2
|
||||
2
|
||||
2
|
||||
2
|
||||
2
|
||||
2
|
||||
2
|
||||
2
|
||||
2
|
||||
2
|
||||
2
|
||||
2
|
||||
4
|
||||
4
|
||||
4
|
||||
2
|
||||
2
|
||||
2
|
||||
2
|
||||
2
|
||||
2
|
||||
2
|
||||
2
|
||||
2
|
||||
2
|
||||
2
|
||||
2
|
||||
2
|
||||
2
|
||||
2
|
||||
2
|
||||
2
|
||||
2
|
||||
2
|
||||
2
|
||||
2
|
||||
2
|
||||
2
|
||||
2
|
||||
2
|
||||
2
|
||||
2
|
||||
2
|
||||
2
|
||||
2
|
||||
4
|
||||
4
|
||||
4
|
||||
4
|
||||
4
|
||||
4
|
||||
4
|
||||
2
|
||||
2
|
||||
2
|
||||
2
|
||||
2
|
||||
4
|
||||
4
|
||||
4
|
||||
4
|
||||
4
|
||||
4
|
||||
4
|
||||
4
|
||||
4
|
||||
4
|
||||
2
|
||||
2
|
||||
2
|
||||
2
|
||||
2
|
||||
2
|
||||
2
|
||||
2
|
||||
2
|
||||
2
|
||||
2
|
||||
2
|
||||
2
|
||||
2
|
||||
2
|
||||
2
|
||||
2
|
||||
2
|
||||
2
|
||||
2
|
||||
2
|
||||
2
|
||||
2
|
||||
2
|
||||
2
|
||||
4
|
||||
4
|
||||
4
|
||||
4
|
||||
4
|
||||
4
|
||||
4
|
||||
4
|
||||
4
|
||||
2
|
||||
2
|
||||
2
|
||||
2
|
||||
2
|
||||
4
|
||||
4
|
||||
4
|
||||
4
|
||||
4
|
||||
4
|
||||
4
|
||||
4
|
||||
4
|
||||
4
|
||||
2
|
||||
2
|
||||
2
|
||||
2
|
||||
2
|
||||
2
|
||||
2
|
||||
2
|
||||
2
|
||||
2
|
||||
2
|
||||
2
|
||||
2
|
||||
2
|
||||
2
|
||||
2
|
||||
2
|
||||
2
|
||||
2
|
||||
2
|
||||
2
|
||||
978
tex/gfx/activity/activity_over_time.eps
Normal file
978
tex/gfx/activity/activity_over_time.eps
Normal file
@@ -0,0 +1,978 @@
|
||||
%!PS-Adobe-2.0 EPSF-2.0
|
||||
%%Title: activity_over_time.tex
|
||||
%%Creator: gnuplot 5.0 patchlevel 1
|
||||
%%CreationDate: Wed May 4 13:47:00 2016
|
||||
%%DocumentFonts:
|
||||
%%BoundingBox: 50 50 294 150
|
||||
%%EndComments
|
||||
%%BeginProlog
|
||||
/gnudict 256 dict def
|
||||
gnudict begin
|
||||
%
|
||||
% The following true/false flags may be edited by hand if desired.
|
||||
% The unit line width and grayscale image gamma correction may also be changed.
|
||||
%
|
||||
/Color false def
|
||||
/Blacktext true def
|
||||
/Solid false def
|
||||
/Dashlength 1 def
|
||||
/Landscape false def
|
||||
/Level1 false def
|
||||
/Level3 false def
|
||||
/Rounded false def
|
||||
/ClipToBoundingBox false def
|
||||
/SuppressPDFMark false def
|
||||
/TransparentPatterns false def
|
||||
/gnulinewidth 5.000 def
|
||||
/userlinewidth gnulinewidth def
|
||||
/Gamma 1.0 def
|
||||
/BackgroundColor {-1.000 -1.000 -1.000} def
|
||||
%
|
||||
/vshift -73 def
|
||||
/dl1 {
|
||||
10.0 Dashlength userlinewidth gnulinewidth div mul mul mul
|
||||
Rounded { currentlinewidth 0.75 mul sub dup 0 le { pop 0.01 } if } if
|
||||
} def
|
||||
/dl2 {
|
||||
10.0 Dashlength userlinewidth gnulinewidth div mul mul mul
|
||||
Rounded { currentlinewidth 0.75 mul add } if
|
||||
} def
|
||||
/hpt_ 31.5 def
|
||||
/vpt_ 31.5 def
|
||||
/hpt hpt_ def
|
||||
/vpt vpt_ def
|
||||
/doclip {
|
||||
ClipToBoundingBox {
|
||||
newpath 50 50 moveto 294 50 lineto 294 150 lineto 50 150 lineto closepath
|
||||
clip
|
||||
} if
|
||||
} def
|
||||
%
|
||||
% Gnuplot Prolog Version 5.0 (Dec 2014)
|
||||
%
|
||||
%/SuppressPDFMark true def
|
||||
%
|
||||
/M {moveto} bind def
|
||||
/L {lineto} bind def
|
||||
/R {rmoveto} bind def
|
||||
/V {rlineto} bind def
|
||||
/N {newpath moveto} bind def
|
||||
/Z {closepath} bind def
|
||||
/C {setrgbcolor} bind def
|
||||
/f {rlineto fill} bind def
|
||||
/g {setgray} bind def
|
||||
/Gshow {show} def % May be redefined later in the file to support UTF-8
|
||||
/vpt2 vpt 2 mul def
|
||||
/hpt2 hpt 2 mul def
|
||||
/Lshow {currentpoint stroke M 0 vshift R
|
||||
Blacktext {gsave 0 setgray textshow grestore} {textshow} ifelse} def
|
||||
/Rshow {currentpoint stroke M dup stringwidth pop neg vshift R
|
||||
Blacktext {gsave 0 setgray textshow grestore} {textshow} ifelse} def
|
||||
/Cshow {currentpoint stroke M dup stringwidth pop -2 div vshift R
|
||||
Blacktext {gsave 0 setgray textshow grestore} {textshow} ifelse} def
|
||||
/UP {dup vpt_ mul /vpt exch def hpt_ mul /hpt exch def
|
||||
/hpt2 hpt 2 mul def /vpt2 vpt 2 mul def} def
|
||||
/DL {Color {setrgbcolor Solid {pop []} if 0 setdash}
|
||||
{pop pop pop 0 setgray Solid {pop []} if 0 setdash} ifelse} def
|
||||
/BL {stroke userlinewidth 2 mul setlinewidth
|
||||
Rounded {1 setlinejoin 1 setlinecap} if} def
|
||||
/AL {stroke userlinewidth 2 div setlinewidth
|
||||
Rounded {1 setlinejoin 1 setlinecap} if} def
|
||||
/UL {dup gnulinewidth mul /userlinewidth exch def
|
||||
dup 1 lt {pop 1} if 10 mul /udl exch def} def
|
||||
/PL {stroke userlinewidth setlinewidth
|
||||
Rounded {1 setlinejoin 1 setlinecap} if} def
|
||||
3.8 setmiterlimit
|
||||
% Classic Line colors (version 5.0)
|
||||
/LCw {1 1 1} def
|
||||
/LCb {0 0 0} def
|
||||
/LCa {0 0 0} def
|
||||
/LC0 {1 0 0} def
|
||||
/LC1 {0 1 0} def
|
||||
/LC2 {0 0 1} def
|
||||
/LC3 {1 0 1} def
|
||||
/LC4 {0 1 1} def
|
||||
/LC5 {1 1 0} def
|
||||
/LC6 {0 0 0} def
|
||||
/LC7 {1 0.3 0} def
|
||||
/LC8 {0.5 0.5 0.5} def
|
||||
% Default dash patterns (version 5.0)
|
||||
/LTw {PL [] 1 setgray} def
|
||||
/LTb {BL [] LCb DL} def
|
||||
/LTa {AL [1 udl mul 2 udl mul] 0 setdash LCa setrgbcolor} def
|
||||
/LT0 {PL [] LC0 DL} def
|
||||
/LT1 {PL [2 dl1 3 dl2] LC1 DL} def
|
||||
/LT2 {PL [1 dl1 1.5 dl2] LC2 DL} def
|
||||
/LT3 {PL [6 dl1 2 dl2 1 dl1 2 dl2] LC3 DL} def
|
||||
/LT4 {PL [1 dl1 2 dl2 6 dl1 2 dl2 1 dl1 2 dl2] LC4 DL} def
|
||||
/LT5 {PL [4 dl1 2 dl2] LC5 DL} def
|
||||
/LT6 {PL [1.5 dl1 1.5 dl2 1.5 dl1 1.5 dl2 1.5 dl1 6 dl2] LC6 DL} def
|
||||
/LT7 {PL [3 dl1 3 dl2 1 dl1 3 dl2] LC7 DL} def
|
||||
/LT8 {PL [2 dl1 2 dl2 2 dl1 6 dl2] LC8 DL} def
|
||||
/SL {[] 0 setdash} def
|
||||
/Pnt {stroke [] 0 setdash gsave 1 setlinecap M 0 0 V stroke grestore} def
|
||||
/Dia {stroke [] 0 setdash 2 copy vpt add M
|
||||
hpt neg vpt neg V hpt vpt neg V
|
||||
hpt vpt V hpt neg vpt V closepath stroke
|
||||
Pnt} def
|
||||
/Pls {stroke [] 0 setdash vpt sub M 0 vpt2 V
|
||||
currentpoint stroke M
|
||||
hpt neg vpt neg R hpt2 0 V stroke
|
||||
} def
|
||||
/Box {stroke [] 0 setdash 2 copy exch hpt sub exch vpt add M
|
||||
0 vpt2 neg V hpt2 0 V 0 vpt2 V
|
||||
hpt2 neg 0 V closepath stroke
|
||||
Pnt} def
|
||||
/Crs {stroke [] 0 setdash exch hpt sub exch vpt add M
|
||||
hpt2 vpt2 neg V currentpoint stroke M
|
||||
hpt2 neg 0 R hpt2 vpt2 V stroke} def
|
||||
/TriU {stroke [] 0 setdash 2 copy vpt 1.12 mul add M
|
||||
hpt neg vpt -1.62 mul V
|
||||
hpt 2 mul 0 V
|
||||
hpt neg vpt 1.62 mul V closepath stroke
|
||||
Pnt} def
|
||||
/Star {2 copy Pls Crs} def
|
||||
/BoxF {stroke [] 0 setdash exch hpt sub exch vpt add M
|
||||
0 vpt2 neg V hpt2 0 V 0 vpt2 V
|
||||
hpt2 neg 0 V closepath fill} def
|
||||
/TriUF {stroke [] 0 setdash vpt 1.12 mul add M
|
||||
hpt neg vpt -1.62 mul V
|
||||
hpt 2 mul 0 V
|
||||
hpt neg vpt 1.62 mul V closepath fill} def
|
||||
/TriD {stroke [] 0 setdash 2 copy vpt 1.12 mul sub M
|
||||
hpt neg vpt 1.62 mul V
|
||||
hpt 2 mul 0 V
|
||||
hpt neg vpt -1.62 mul V closepath stroke
|
||||
Pnt} def
|
||||
/TriDF {stroke [] 0 setdash vpt 1.12 mul sub M
|
||||
hpt neg vpt 1.62 mul V
|
||||
hpt 2 mul 0 V
|
||||
hpt neg vpt -1.62 mul V closepath fill} def
|
||||
/DiaF {stroke [] 0 setdash vpt add M
|
||||
hpt neg vpt neg V hpt vpt neg V
|
||||
hpt vpt V hpt neg vpt V closepath fill} def
|
||||
/Pent {stroke [] 0 setdash 2 copy gsave
|
||||
translate 0 hpt M 4 {72 rotate 0 hpt L} repeat
|
||||
closepath stroke grestore Pnt} def
|
||||
/PentF {stroke [] 0 setdash gsave
|
||||
translate 0 hpt M 4 {72 rotate 0 hpt L} repeat
|
||||
closepath fill grestore} def
|
||||
/Circle {stroke [] 0 setdash 2 copy
|
||||
hpt 0 360 arc stroke Pnt} def
|
||||
/CircleF {stroke [] 0 setdash hpt 0 360 arc fill} def
|
||||
/C0 {BL [] 0 setdash 2 copy moveto vpt 90 450 arc} bind def
|
||||
/C1 {BL [] 0 setdash 2 copy moveto
|
||||
2 copy vpt 0 90 arc closepath fill
|
||||
vpt 0 360 arc closepath} bind def
|
||||
/C2 {BL [] 0 setdash 2 copy moveto
|
||||
2 copy vpt 90 180 arc closepath fill
|
||||
vpt 0 360 arc closepath} bind def
|
||||
/C3 {BL [] 0 setdash 2 copy moveto
|
||||
2 copy vpt 0 180 arc closepath fill
|
||||
vpt 0 360 arc closepath} bind def
|
||||
/C4 {BL [] 0 setdash 2 copy moveto
|
||||
2 copy vpt 180 270 arc closepath fill
|
||||
vpt 0 360 arc closepath} bind def
|
||||
/C5 {BL [] 0 setdash 2 copy moveto
|
||||
2 copy vpt 0 90 arc
|
||||
2 copy moveto
|
||||
2 copy vpt 180 270 arc closepath fill
|
||||
vpt 0 360 arc} bind def
|
||||
/C6 {BL [] 0 setdash 2 copy moveto
|
||||
2 copy vpt 90 270 arc closepath fill
|
||||
vpt 0 360 arc closepath} bind def
|
||||
/C7 {BL [] 0 setdash 2 copy moveto
|
||||
2 copy vpt 0 270 arc closepath fill
|
||||
vpt 0 360 arc closepath} bind def
|
||||
/C8 {BL [] 0 setdash 2 copy moveto
|
||||
2 copy vpt 270 360 arc closepath fill
|
||||
vpt 0 360 arc closepath} bind def
|
||||
/C9 {BL [] 0 setdash 2 copy moveto
|
||||
2 copy vpt 270 450 arc closepath fill
|
||||
vpt 0 360 arc closepath} bind def
|
||||
/C10 {BL [] 0 setdash 2 copy 2 copy moveto vpt 270 360 arc closepath fill
|
||||
2 copy moveto
|
||||
2 copy vpt 90 180 arc closepath fill
|
||||
vpt 0 360 arc closepath} bind def
|
||||
/C11 {BL [] 0 setdash 2 copy moveto
|
||||
2 copy vpt 0 180 arc closepath fill
|
||||
2 copy moveto
|
||||
2 copy vpt 270 360 arc closepath fill
|
||||
vpt 0 360 arc closepath} bind def
|
||||
/C12 {BL [] 0 setdash 2 copy moveto
|
||||
2 copy vpt 180 360 arc closepath fill
|
||||
vpt 0 360 arc closepath} bind def
|
||||
/C13 {BL [] 0 setdash 2 copy moveto
|
||||
2 copy vpt 0 90 arc closepath fill
|
||||
2 copy moveto
|
||||
2 copy vpt 180 360 arc closepath fill
|
||||
vpt 0 360 arc closepath} bind def
|
||||
/C14 {BL [] 0 setdash 2 copy moveto
|
||||
2 copy vpt 90 360 arc closepath fill
|
||||
vpt 0 360 arc} bind def
|
||||
/C15 {BL [] 0 setdash 2 copy vpt 0 360 arc closepath fill
|
||||
vpt 0 360 arc closepath} bind def
|
||||
/Rec {newpath 4 2 roll moveto 1 index 0 rlineto 0 exch rlineto
|
||||
neg 0 rlineto closepath} bind def
|
||||
/Square {dup Rec} bind def
|
||||
/Bsquare {vpt sub exch vpt sub exch vpt2 Square} bind def
|
||||
/S0 {BL [] 0 setdash 2 copy moveto 0 vpt rlineto BL Bsquare} bind def
|
||||
/S1 {BL [] 0 setdash 2 copy vpt Square fill Bsquare} bind def
|
||||
/S2 {BL [] 0 setdash 2 copy exch vpt sub exch vpt Square fill Bsquare} bind def
|
||||
/S3 {BL [] 0 setdash 2 copy exch vpt sub exch vpt2 vpt Rec fill Bsquare} bind def
|
||||
/S4 {BL [] 0 setdash 2 copy exch vpt sub exch vpt sub vpt Square fill Bsquare} bind def
|
||||
/S5 {BL [] 0 setdash 2 copy 2 copy vpt Square fill
|
||||
exch vpt sub exch vpt sub vpt Square fill Bsquare} bind def
|
||||
/S6 {BL [] 0 setdash 2 copy exch vpt sub exch vpt sub vpt vpt2 Rec fill Bsquare} bind def
|
||||
/S7 {BL [] 0 setdash 2 copy exch vpt sub exch vpt sub vpt vpt2 Rec fill
|
||||
2 copy vpt Square fill Bsquare} bind def
|
||||
/S8 {BL [] 0 setdash 2 copy vpt sub vpt Square fill Bsquare} bind def
|
||||
/S9 {BL [] 0 setdash 2 copy vpt sub vpt vpt2 Rec fill Bsquare} bind def
|
||||
/S10 {BL [] 0 setdash 2 copy vpt sub vpt Square fill 2 copy exch vpt sub exch vpt Square fill
|
||||
Bsquare} bind def
|
||||
/S11 {BL [] 0 setdash 2 copy vpt sub vpt Square fill 2 copy exch vpt sub exch vpt2 vpt Rec fill
|
||||
Bsquare} bind def
|
||||
/S12 {BL [] 0 setdash 2 copy exch vpt sub exch vpt sub vpt2 vpt Rec fill Bsquare} bind def
|
||||
/S13 {BL [] 0 setdash 2 copy exch vpt sub exch vpt sub vpt2 vpt Rec fill
|
||||
2 copy vpt Square fill Bsquare} bind def
|
||||
/S14 {BL [] 0 setdash 2 copy exch vpt sub exch vpt sub vpt2 vpt Rec fill
|
||||
2 copy exch vpt sub exch vpt Square fill Bsquare} bind def
|
||||
/S15 {BL [] 0 setdash 2 copy Bsquare fill Bsquare} bind def
|
||||
/D0 {gsave translate 45 rotate 0 0 S0 stroke grestore} bind def
|
||||
/D1 {gsave translate 45 rotate 0 0 S1 stroke grestore} bind def
|
||||
/D2 {gsave translate 45 rotate 0 0 S2 stroke grestore} bind def
|
||||
/D3 {gsave translate 45 rotate 0 0 S3 stroke grestore} bind def
|
||||
/D4 {gsave translate 45 rotate 0 0 S4 stroke grestore} bind def
|
||||
/D5 {gsave translate 45 rotate 0 0 S5 stroke grestore} bind def
|
||||
/D6 {gsave translate 45 rotate 0 0 S6 stroke grestore} bind def
|
||||
/D7 {gsave translate 45 rotate 0 0 S7 stroke grestore} bind def
|
||||
/D8 {gsave translate 45 rotate 0 0 S8 stroke grestore} bind def
|
||||
/D9 {gsave translate 45 rotate 0 0 S9 stroke grestore} bind def
|
||||
/D10 {gsave translate 45 rotate 0 0 S10 stroke grestore} bind def
|
||||
/D11 {gsave translate 45 rotate 0 0 S11 stroke grestore} bind def
|
||||
/D12 {gsave translate 45 rotate 0 0 S12 stroke grestore} bind def
|
||||
/D13 {gsave translate 45 rotate 0 0 S13 stroke grestore} bind def
|
||||
/D14 {gsave translate 45 rotate 0 0 S14 stroke grestore} bind def
|
||||
/D15 {gsave translate 45 rotate 0 0 S15 stroke grestore} bind def
|
||||
/DiaE {stroke [] 0 setdash vpt add M
|
||||
hpt neg vpt neg V hpt vpt neg V
|
||||
hpt vpt V hpt neg vpt V closepath stroke} def
|
||||
/BoxE {stroke [] 0 setdash exch hpt sub exch vpt add M
|
||||
0 vpt2 neg V hpt2 0 V 0 vpt2 V
|
||||
hpt2 neg 0 V closepath stroke} def
|
||||
/TriUE {stroke [] 0 setdash vpt 1.12 mul add M
|
||||
hpt neg vpt -1.62 mul V
|
||||
hpt 2 mul 0 V
|
||||
hpt neg vpt 1.62 mul V closepath stroke} def
|
||||
/TriDE {stroke [] 0 setdash vpt 1.12 mul sub M
|
||||
hpt neg vpt 1.62 mul V
|
||||
hpt 2 mul 0 V
|
||||
hpt neg vpt -1.62 mul V closepath stroke} def
|
||||
/PentE {stroke [] 0 setdash gsave
|
||||
translate 0 hpt M 4 {72 rotate 0 hpt L} repeat
|
||||
closepath stroke grestore} def
|
||||
/CircE {stroke [] 0 setdash
|
||||
hpt 0 360 arc stroke} def
|
||||
/Opaque {gsave closepath 1 setgray fill grestore 0 setgray closepath} def
|
||||
/DiaW {stroke [] 0 setdash vpt add M
|
||||
hpt neg vpt neg V hpt vpt neg V
|
||||
hpt vpt V hpt neg vpt V Opaque stroke} def
|
||||
/BoxW {stroke [] 0 setdash exch hpt sub exch vpt add M
|
||||
0 vpt2 neg V hpt2 0 V 0 vpt2 V
|
||||
hpt2 neg 0 V Opaque stroke} def
|
||||
/TriUW {stroke [] 0 setdash vpt 1.12 mul add M
|
||||
hpt neg vpt -1.62 mul V
|
||||
hpt 2 mul 0 V
|
||||
hpt neg vpt 1.62 mul V Opaque stroke} def
|
||||
/TriDW {stroke [] 0 setdash vpt 1.12 mul sub M
|
||||
hpt neg vpt 1.62 mul V
|
||||
hpt 2 mul 0 V
|
||||
hpt neg vpt -1.62 mul V Opaque stroke} def
|
||||
/PentW {stroke [] 0 setdash gsave
|
||||
translate 0 hpt M 4 {72 rotate 0 hpt L} repeat
|
||||
Opaque stroke grestore} def
|
||||
/CircW {stroke [] 0 setdash
|
||||
hpt 0 360 arc Opaque stroke} def
|
||||
/BoxFill {gsave Rec 1 setgray fill grestore} def
|
||||
/Density {
|
||||
/Fillden exch def
|
||||
currentrgbcolor
|
||||
/ColB exch def /ColG exch def /ColR exch def
|
||||
/ColR ColR Fillden mul Fillden sub 1 add def
|
||||
/ColG ColG Fillden mul Fillden sub 1 add def
|
||||
/ColB ColB Fillden mul Fillden sub 1 add def
|
||||
ColR ColG ColB setrgbcolor} def
|
||||
/BoxColFill {gsave Rec PolyFill} def
|
||||
/PolyFill {gsave Density fill grestore grestore} def
|
||||
/h {rlineto rlineto rlineto gsave closepath fill grestore} bind def
|
||||
%
|
||||
% PostScript Level 1 Pattern Fill routine for rectangles
|
||||
% Usage: x y w h s a XX PatternFill
|
||||
% x,y = lower left corner of box to be filled
|
||||
% w,h = width and height of box
|
||||
% a = angle in degrees between lines and x-axis
|
||||
% XX = 0/1 for no/yes cross-hatch
|
||||
%
|
||||
/PatternFill {gsave /PFa [ 9 2 roll ] def
|
||||
PFa 0 get PFa 2 get 2 div add PFa 1 get PFa 3 get 2 div add translate
|
||||
PFa 2 get -2 div PFa 3 get -2 div PFa 2 get PFa 3 get Rec
|
||||
TransparentPatterns {} {gsave 1 setgray fill grestore} ifelse
|
||||
clip
|
||||
currentlinewidth 0.5 mul setlinewidth
|
||||
/PFs PFa 2 get dup mul PFa 3 get dup mul add sqrt def
|
||||
0 0 M PFa 5 get rotate PFs -2 div dup translate
|
||||
0 1 PFs PFa 4 get div 1 add floor cvi
|
||||
{PFa 4 get mul 0 M 0 PFs V} for
|
||||
0 PFa 6 get ne {
|
||||
0 1 PFs PFa 4 get div 1 add floor cvi
|
||||
{PFa 4 get mul 0 2 1 roll M PFs 0 V} for
|
||||
} if
|
||||
stroke grestore} def
|
||||
%
|
||||
/languagelevel where
|
||||
{pop languagelevel} {1} ifelse
|
||||
dup 2 lt
|
||||
{/InterpretLevel1 true def
|
||||
/InterpretLevel3 false def}
|
||||
{/InterpretLevel1 Level1 def
|
||||
2 gt
|
||||
{/InterpretLevel3 Level3 def}
|
||||
{/InterpretLevel3 false def}
|
||||
ifelse }
|
||||
ifelse
|
||||
%
|
||||
% PostScript level 2 pattern fill definitions
|
||||
%
|
||||
/Level2PatternFill {
|
||||
/Tile8x8 {/PaintType 2 /PatternType 1 /TilingType 1 /BBox [0 0 8 8] /XStep 8 /YStep 8}
|
||||
bind def
|
||||
/KeepColor {currentrgbcolor [/Pattern /DeviceRGB] setcolorspace} bind def
|
||||
<< Tile8x8
|
||||
/PaintProc {0.5 setlinewidth pop 0 0 M 8 8 L 0 8 M 8 0 L stroke}
|
||||
>> matrix makepattern
|
||||
/Pat1 exch def
|
||||
<< Tile8x8
|
||||
/PaintProc {0.5 setlinewidth pop 0 0 M 8 8 L 0 8 M 8 0 L stroke
|
||||
0 4 M 4 8 L 8 4 L 4 0 L 0 4 L stroke}
|
||||
>> matrix makepattern
|
||||
/Pat2 exch def
|
||||
<< Tile8x8
|
||||
/PaintProc {0.5 setlinewidth pop 0 0 M 0 8 L
|
||||
8 8 L 8 0 L 0 0 L fill}
|
||||
>> matrix makepattern
|
||||
/Pat3 exch def
|
||||
<< Tile8x8
|
||||
/PaintProc {0.5 setlinewidth pop -4 8 M 8 -4 L
|
||||
0 12 M 12 0 L stroke}
|
||||
>> matrix makepattern
|
||||
/Pat4 exch def
|
||||
<< Tile8x8
|
||||
/PaintProc {0.5 setlinewidth pop -4 0 M 8 12 L
|
||||
0 -4 M 12 8 L stroke}
|
||||
>> matrix makepattern
|
||||
/Pat5 exch def
|
||||
<< Tile8x8
|
||||
/PaintProc {0.5 setlinewidth pop -2 8 M 4 -4 L
|
||||
0 12 M 8 -4 L 4 12 M 10 0 L stroke}
|
||||
>> matrix makepattern
|
||||
/Pat6 exch def
|
||||
<< Tile8x8
|
||||
/PaintProc {0.5 setlinewidth pop -2 0 M 4 12 L
|
||||
0 -4 M 8 12 L 4 -4 M 10 8 L stroke}
|
||||
>> matrix makepattern
|
||||
/Pat7 exch def
|
||||
<< Tile8x8
|
||||
/PaintProc {0.5 setlinewidth pop 8 -2 M -4 4 L
|
||||
12 0 M -4 8 L 12 4 M 0 10 L stroke}
|
||||
>> matrix makepattern
|
||||
/Pat8 exch def
|
||||
<< Tile8x8
|
||||
/PaintProc {0.5 setlinewidth pop 0 -2 M 12 4 L
|
||||
-4 0 M 12 8 L -4 4 M 8 10 L stroke}
|
||||
>> matrix makepattern
|
||||
/Pat9 exch def
|
||||
/Pattern1 {PatternBgnd KeepColor Pat1 setpattern} bind def
|
||||
/Pattern2 {PatternBgnd KeepColor Pat2 setpattern} bind def
|
||||
/Pattern3 {PatternBgnd KeepColor Pat3 setpattern} bind def
|
||||
/Pattern4 {PatternBgnd KeepColor Landscape {Pat5} {Pat4} ifelse setpattern} bind def
|
||||
/Pattern5 {PatternBgnd KeepColor Landscape {Pat4} {Pat5} ifelse setpattern} bind def
|
||||
/Pattern6 {PatternBgnd KeepColor Landscape {Pat9} {Pat6} ifelse setpattern} bind def
|
||||
/Pattern7 {PatternBgnd KeepColor Landscape {Pat8} {Pat7} ifelse setpattern} bind def
|
||||
} def
|
||||
%
|
||||
%
|
||||
%End of PostScript Level 2 code
|
||||
%
|
||||
/PatternBgnd {
|
||||
TransparentPatterns {} {gsave 1 setgray fill grestore} ifelse
|
||||
} def
|
||||
%
|
||||
% Substitute for Level 2 pattern fill codes with
|
||||
% grayscale if Level 2 support is not selected.
|
||||
%
|
||||
/Level1PatternFill {
|
||||
/Pattern1 {0.250 Density} bind def
|
||||
/Pattern2 {0.500 Density} bind def
|
||||
/Pattern3 {0.750 Density} bind def
|
||||
/Pattern4 {0.125 Density} bind def
|
||||
/Pattern5 {0.375 Density} bind def
|
||||
/Pattern6 {0.625 Density} bind def
|
||||
/Pattern7 {0.875 Density} bind def
|
||||
} def
|
||||
%
|
||||
% Now test for support of Level 2 code
|
||||
%
|
||||
Level1 {Level1PatternFill} {Level2PatternFill} ifelse
|
||||
%
|
||||
/Symbol-Oblique /Symbol findfont [1 0 .167 1 0 0] makefont
|
||||
dup length dict begin {1 index /FID eq {pop pop} {def} ifelse} forall
|
||||
currentdict end definefont pop
|
||||
%
|
||||
Level1 SuppressPDFMark or
|
||||
{} {
|
||||
/SDict 10 dict def
|
||||
systemdict /pdfmark known not {
|
||||
userdict /pdfmark systemdict /cleartomark get put
|
||||
} if
|
||||
SDict begin [
|
||||
/Title (activity_over_time.tex)
|
||||
/Subject (gnuplot plot)
|
||||
/Creator (gnuplot 5.0 patchlevel 1)
|
||||
/Author (kazu)
|
||||
% /Producer (gnuplot)
|
||||
% /Keywords ()
|
||||
/CreationDate (Wed May 4 13:47:00 2016)
|
||||
/DOCINFO pdfmark
|
||||
end
|
||||
} ifelse
|
||||
end
|
||||
%
|
||||
% Support for boxed text - Ethan A Merritt May 2005
|
||||
%
|
||||
/InitTextBox { userdict /TBy2 3 -1 roll put userdict /TBx2 3 -1 roll put
|
||||
userdict /TBy1 3 -1 roll put userdict /TBx1 3 -1 roll put
|
||||
/Boxing true def } def
|
||||
/ExtendTextBox { Boxing
|
||||
{ gsave dup false charpath pathbbox
|
||||
dup TBy2 gt {userdict /TBy2 3 -1 roll put} {pop} ifelse
|
||||
dup TBx2 gt {userdict /TBx2 3 -1 roll put} {pop} ifelse
|
||||
dup TBy1 lt {userdict /TBy1 3 -1 roll put} {pop} ifelse
|
||||
dup TBx1 lt {userdict /TBx1 3 -1 roll put} {pop} ifelse
|
||||
grestore } if } def
|
||||
/PopTextBox { newpath TBx1 TBxmargin sub TBy1 TBymargin sub M
|
||||
TBx1 TBxmargin sub TBy2 TBymargin add L
|
||||
TBx2 TBxmargin add TBy2 TBymargin add L
|
||||
TBx2 TBxmargin add TBy1 TBymargin sub L closepath } def
|
||||
/DrawTextBox { PopTextBox stroke /Boxing false def} def
|
||||
/FillTextBox { gsave PopTextBox 1 1 1 setrgbcolor fill grestore /Boxing false def} def
|
||||
0 0 0 0 InitTextBox
|
||||
/TBxmargin 20 def
|
||||
/TBymargin 20 def
|
||||
/Boxing false def
|
||||
/textshow { ExtendTextBox Gshow } def
|
||||
%
|
||||
%%EndProlog
|
||||
%%Page: 1 1
|
||||
gnudict begin
|
||||
gsave
|
||||
doclip
|
||||
50 50 translate
|
||||
0.050 0.050 scale
|
||||
0 setgray
|
||||
newpath
|
||||
1.000 UL
|
||||
LTb
|
||||
LCb setrgbcolor
|
||||
LTb
|
||||
0.93 0.93 0.93 C 1.000 924 264 363 1682 BoxColFill
|
||||
1.000 UL
|
||||
LTb
|
||||
LCb setrgbcolor
|
||||
LTb
|
||||
0.87 0.87 0.87 C 1.000 1287 264 675 1682 BoxColFill
|
||||
1.000 UL
|
||||
LTb
|
||||
LCb setrgbcolor
|
||||
LTb
|
||||
0.93 0.93 0.93 C 1.000 1962 264 285 1682 BoxColFill
|
||||
1.000 UL
|
||||
LTb
|
||||
LCb setrgbcolor
|
||||
LTb
|
||||
0.87 0.87 0.87 C 1.000 2247 264 364 1682 BoxColFill
|
||||
1.000 UL
|
||||
LTb
|
||||
LCb setrgbcolor
|
||||
LTb
|
||||
0.93 0.93 0.93 C 1.000 2611 264 233 1682 BoxColFill
|
||||
1.000 UL
|
||||
LTb
|
||||
LCb setrgbcolor
|
||||
LTb
|
||||
0.87 0.87 0.87 C 1.000 2844 264 804 1682 BoxColFill
|
||||
1.000 UL
|
||||
LTb
|
||||
LCb setrgbcolor
|
||||
LTb
|
||||
0.93 0.93 0.93 C 1.000 3648 264 286 1682 BoxColFill
|
||||
1.000 UL
|
||||
LTb
|
||||
LCb setrgbcolor
|
||||
LTb
|
||||
0.87 0.87 0.87 C 1.000 3934 264 311 1682 BoxColFill
|
||||
1.000 UL
|
||||
LTb
|
||||
LCb setrgbcolor
|
||||
LTb
|
||||
0.93 0.93 0.93 C 1.000 4245 264 312 1682 BoxColFill
|
||||
1.000 UL
|
||||
LTb
|
||||
LCb setrgbcolor
|
||||
LTb
|
||||
0.87 0.87 0.87 C 1.000 4557 264 259 1682 BoxColFill
|
||||
1.000 UL
|
||||
LTb
|
||||
LCb setrgbcolor
|
||||
LTb
|
||||
0.500 UL
|
||||
LTa
|
||||
LCa setrgbcolor
|
||||
924 264 M
|
||||
3918 0 V
|
||||
stroke
|
||||
1.000 UL
|
||||
LTb
|
||||
LCb setrgbcolor
|
||||
LTb
|
||||
924 264 M
|
||||
63 0 V
|
||||
stroke
|
||||
0.500 UL
|
||||
LTa
|
||||
LCa setrgbcolor
|
||||
924 545 M
|
||||
3918 0 V
|
||||
stroke
|
||||
1.000 UL
|
||||
LTb
|
||||
LCb setrgbcolor
|
||||
LTb
|
||||
924 545 M
|
||||
63 0 V
|
||||
stroke
|
||||
0.500 UL
|
||||
LTa
|
||||
LCa setrgbcolor
|
||||
924 825 M
|
||||
3918 0 V
|
||||
stroke
|
||||
1.000 UL
|
||||
LTb
|
||||
LCb setrgbcolor
|
||||
LTb
|
||||
924 825 M
|
||||
63 0 V
|
||||
stroke
|
||||
0.500 UL
|
||||
LTa
|
||||
LCa setrgbcolor
|
||||
924 1106 M
|
||||
3918 0 V
|
||||
stroke
|
||||
1.000 UL
|
||||
LTb
|
||||
LCb setrgbcolor
|
||||
LTb
|
||||
924 1106 M
|
||||
63 0 V
|
||||
stroke
|
||||
0.500 UL
|
||||
LTa
|
||||
LCa setrgbcolor
|
||||
924 1386 M
|
||||
3918 0 V
|
||||
stroke
|
||||
1.000 UL
|
||||
LTb
|
||||
LCb setrgbcolor
|
||||
LTb
|
||||
924 1386 M
|
||||
63 0 V
|
||||
stroke
|
||||
0.500 UL
|
||||
LTa
|
||||
LCa setrgbcolor
|
||||
924 264 M
|
||||
3918 0 V
|
||||
stroke
|
||||
1.000 UL
|
||||
LTb
|
||||
LCb setrgbcolor
|
||||
LTb
|
||||
924 264 M
|
||||
63 0 V
|
||||
stroke
|
||||
0.500 UL
|
||||
LTa
|
||||
LCa setrgbcolor
|
||||
924 1386 M
|
||||
3918 0 V
|
||||
stroke
|
||||
1.000 UL
|
||||
LTb
|
||||
LCb setrgbcolor
|
||||
LTb
|
||||
924 1386 M
|
||||
63 0 V
|
||||
924 264 M
|
||||
0 63 V
|
||||
519 -63 R
|
||||
0 63 V
|
||||
519 -63 R
|
||||
0 63 V
|
||||
519 -63 R
|
||||
0 63 V
|
||||
519 -63 R
|
||||
0 63 V
|
||||
519 -63 R
|
||||
0 63 V
|
||||
519 -63 R
|
||||
0 63 V
|
||||
519 -63 R
|
||||
0 63 V
|
||||
stroke
|
||||
924 1947 N
|
||||
924 264 L
|
||||
3918 0 V
|
||||
0 1683 V
|
||||
-3918 0 V
|
||||
Z stroke
|
||||
1.000 UP
|
||||
1.000 UL
|
||||
LTb
|
||||
1.200 UL
|
||||
LTb
|
||||
0.00 0.00 0.00 C 924 264 M
|
||||
13 0 V
|
||||
13 0 V
|
||||
13 281 V
|
||||
13 0 V
|
||||
13 0 V
|
||||
13 0 V
|
||||
13 0 V
|
||||
13 0 V
|
||||
13 0 V
|
||||
13 0 V
|
||||
13 0 V
|
||||
13 0 V
|
||||
13 0 V
|
||||
13 0 V
|
||||
13 0 V
|
||||
13 0 V
|
||||
13 0 V
|
||||
13 280 V
|
||||
12 0 V
|
||||
13 0 V
|
||||
13 0 V
|
||||
13 0 V
|
||||
13 0 V
|
||||
13 0 V
|
||||
13 -280 V
|
||||
13 0 V
|
||||
13 0 V
|
||||
13 0 V
|
||||
13 0 V
|
||||
13 280 V
|
||||
13 0 V
|
||||
13 0 V
|
||||
13 0 V
|
||||
13 0 V
|
||||
13 0 V
|
||||
13 0 V
|
||||
13 0 V
|
||||
13 0 V
|
||||
13 0 V
|
||||
13 0 V
|
||||
13 0 V
|
||||
13 0 V
|
||||
13 0 V
|
||||
13 0 V
|
||||
13 0 V
|
||||
13 0 V
|
||||
13 0 V
|
||||
13 561 V
|
||||
13 0 V
|
||||
13 -561 V
|
||||
13 0 V
|
||||
13 0 V
|
||||
13 0 V
|
||||
13 0 V
|
||||
13 0 V
|
||||
13 0 V
|
||||
12 0 V
|
||||
13 0 V
|
||||
13 0 V
|
||||
13 0 V
|
||||
13 0 V
|
||||
13 0 V
|
||||
13 0 V
|
||||
13 0 V
|
||||
13 0 V
|
||||
13 0 V
|
||||
13 0 V
|
||||
13 0 V
|
||||
13 0 V
|
||||
13 0 V
|
||||
13 0 V
|
||||
13 0 V
|
||||
13 0 V
|
||||
13 0 V
|
||||
13 0 V
|
||||
13 0 V
|
||||
13 0 V
|
||||
13 0 V
|
||||
13 0 V
|
||||
13 0 V
|
||||
13 0 V
|
||||
13 0 V
|
||||
13 0 V
|
||||
13 0 V
|
||||
13 0 V
|
||||
13 0 V
|
||||
13 0 V
|
||||
13 0 V
|
||||
13 0 V
|
||||
13 0 V
|
||||
13 0 V
|
||||
13 0 V
|
||||
13 0 V
|
||||
13 0 V
|
||||
12 0 V
|
||||
13 0 V
|
||||
13 0 V
|
||||
13 0 V
|
||||
13 0 V
|
||||
13 0 V
|
||||
13 0 V
|
||||
13 0 V
|
||||
13 0 V
|
||||
13 561 V
|
||||
stroke 2273 1386 M
|
||||
13 0 V
|
||||
13 0 V
|
||||
13 0 V
|
||||
13 0 V
|
||||
13 0 V
|
||||
13 0 V
|
||||
13 0 V
|
||||
13 -561 V
|
||||
13 0 V
|
||||
13 0 V
|
||||
13 0 V
|
||||
13 0 V
|
||||
13 0 V
|
||||
13 0 V
|
||||
13 561 V
|
||||
13 0 V
|
||||
13 0 V
|
||||
13 0 V
|
||||
13 0 V
|
||||
13 0 V
|
||||
13 0 V
|
||||
13 0 V
|
||||
13 0 V
|
||||
13 0 V
|
||||
13 -561 V
|
||||
13 0 V
|
||||
13 0 V
|
||||
13 0 V
|
||||
12 0 V
|
||||
13 0 V
|
||||
13 0 V
|
||||
13 0 V
|
||||
13 0 V
|
||||
13 0 V
|
||||
13 0 V
|
||||
13 0 V
|
||||
13 0 V
|
||||
13 0 V
|
||||
13 0 V
|
||||
13 0 V
|
||||
13 0 V
|
||||
13 0 V
|
||||
13 0 V
|
||||
13 0 V
|
||||
13 0 V
|
||||
13 0 V
|
||||
13 0 V
|
||||
13 0 V
|
||||
13 0 V
|
||||
13 0 V
|
||||
13 0 V
|
||||
13 0 V
|
||||
13 0 V
|
||||
13 0 V
|
||||
13 0 V
|
||||
13 0 V
|
||||
13 0 V
|
||||
13 0 V
|
||||
13 0 V
|
||||
13 0 V
|
||||
13 0 V
|
||||
13 0 V
|
||||
13 0 V
|
||||
13 0 V
|
||||
13 0 V
|
||||
12 0 V
|
||||
13 0 V
|
||||
13 0 V
|
||||
13 0 V
|
||||
13 0 V
|
||||
13 0 V
|
||||
13 561 V
|
||||
13 0 V
|
||||
13 0 V
|
||||
13 -561 V
|
||||
13 0 V
|
||||
13 0 V
|
||||
13 0 V
|
||||
13 0 V
|
||||
13 0 V
|
||||
13 0 V
|
||||
13 0 V
|
||||
13 0 V
|
||||
13 0 V
|
||||
13 0 V
|
||||
13 0 V
|
||||
13 0 V
|
||||
13 0 V
|
||||
13 0 V
|
||||
13 0 V
|
||||
13 0 V
|
||||
13 0 V
|
||||
13 0 V
|
||||
13 0 V
|
||||
13 0 V
|
||||
13 0 V
|
||||
13 0 V
|
||||
13 0 V
|
||||
13 0 V
|
||||
13 0 V
|
||||
13 0 V
|
||||
13 0 V
|
||||
13 0 V
|
||||
12 0 V
|
||||
stroke 3622 825 M
|
||||
13 561 V
|
||||
13 0 V
|
||||
13 0 V
|
||||
13 0 V
|
||||
13 0 V
|
||||
13 0 V
|
||||
13 0 V
|
||||
13 -561 V
|
||||
13 0 V
|
||||
13 0 V
|
||||
13 0 V
|
||||
13 0 V
|
||||
13 561 V
|
||||
13 0 V
|
||||
13 0 V
|
||||
13 0 V
|
||||
13 0 V
|
||||
13 0 V
|
||||
13 0 V
|
||||
13 0 V
|
||||
13 0 V
|
||||
13 0 V
|
||||
13 -561 V
|
||||
13 0 V
|
||||
13 0 V
|
||||
13 0 V
|
||||
13 0 V
|
||||
13 0 V
|
||||
13 0 V
|
||||
13 0 V
|
||||
13 0 V
|
||||
13 0 V
|
||||
13 0 V
|
||||
13 0 V
|
||||
13 0 V
|
||||
13 0 V
|
||||
13 0 V
|
||||
12 0 V
|
||||
13 0 V
|
||||
13 0 V
|
||||
13 0 V
|
||||
13 0 V
|
||||
13 0 V
|
||||
13 0 V
|
||||
13 0 V
|
||||
13 0 V
|
||||
13 0 V
|
||||
13 561 V
|
||||
13 0 V
|
||||
13 0 V
|
||||
13 0 V
|
||||
13 0 V
|
||||
13 0 V
|
||||
13 0 V
|
||||
13 0 V
|
||||
13 0 V
|
||||
13 -561 V
|
||||
13 0 V
|
||||
13 0 V
|
||||
13 0 V
|
||||
13 0 V
|
||||
13 561 V
|
||||
13 0 V
|
||||
13 0 V
|
||||
13 0 V
|
||||
13 0 V
|
||||
13 0 V
|
||||
13 0 V
|
||||
13 0 V
|
||||
13 0 V
|
||||
13 0 V
|
||||
13 -561 V
|
||||
13 0 V
|
||||
13 0 V
|
||||
13 0 V
|
||||
12 0 V
|
||||
13 0 V
|
||||
13 0 V
|
||||
13 0 V
|
||||
13 0 V
|
||||
13 0 V
|
||||
13 0 V
|
||||
13 0 V
|
||||
13 0 V
|
||||
13 0 V
|
||||
13 0 V
|
||||
13 0 V
|
||||
13 0 V
|
||||
13 0 V
|
||||
13 0 V
|
||||
13 0 V
|
||||
13 0 V
|
||||
stroke
|
||||
2.000 UL
|
||||
LTb
|
||||
LCb setrgbcolor
|
||||
LTb
|
||||
1.000 UL
|
||||
LTb
|
||||
924 1947 N
|
||||
924 264 L
|
||||
3918 0 V
|
||||
0 1683 V
|
||||
-3918 0 V
|
||||
Z stroke
|
||||
1.000 UP
|
||||
1.000 UL
|
||||
LTb
|
||||
stroke
|
||||
grestore
|
||||
end
|
||||
showpage
|
||||
%%Trailer
|
||||
121
tex/gfx/activity/activity_over_time.tex
Normal file
121
tex/gfx/activity/activity_over_time.tex
Normal file
@@ -0,0 +1,121 @@
|
||||
% GNUPLOT: LaTeX picture with Postscript
|
||||
\begingroup
|
||||
\makeatletter
|
||||
\providecommand\color[2][]{%
|
||||
\GenericError{(gnuplot) \space\space\space\@spaces}{%
|
||||
Package color not loaded in conjunction with
|
||||
terminal option `colourtext'%
|
||||
}{See the gnuplot documentation for explanation.%
|
||||
}{Either use 'blacktext' in gnuplot or load the package
|
||||
color.sty in LaTeX.}%
|
||||
\renewcommand\color[2][]{}%
|
||||
}%
|
||||
\providecommand\includegraphics[2][]{%
|
||||
\GenericError{(gnuplot) \space\space\space\@spaces}{%
|
||||
Package graphicx or graphics not loaded%
|
||||
}{See the gnuplot documentation for explanation.%
|
||||
}{The gnuplot epslatex terminal needs graphicx.sty or graphics.sty.}%
|
||||
\renewcommand\includegraphics[2][]{}%
|
||||
}%
|
||||
\providecommand\rotatebox[2]{#2}%
|
||||
\@ifundefined{ifGPcolor}{%
|
||||
\newif\ifGPcolor
|
||||
\GPcolorfalse
|
||||
}{}%
|
||||
\@ifundefined{ifGPblacktext}{%
|
||||
\newif\ifGPblacktext
|
||||
\GPblacktexttrue
|
||||
}{}%
|
||||
% define a \g@addto@macro without @ in the name:
|
||||
\let\gplgaddtomacro\g@addto@macro
|
||||
% define empty templates for all commands taking text:
|
||||
\gdef\gplbacktext{}%
|
||||
\gdef\gplfronttext{}%
|
||||
\makeatother
|
||||
\ifGPblacktext
|
||||
% no textcolor at all
|
||||
\def\colorrgb#1{}%
|
||||
\def\colorgray#1{}%
|
||||
\else
|
||||
% gray or color?
|
||||
\ifGPcolor
|
||||
\def\colorrgb#1{\color[rgb]{#1}}%
|
||||
\def\colorgray#1{\color[gray]{#1}}%
|
||||
\expandafter\def\csname LTw\endcsname{\color{white}}%
|
||||
\expandafter\def\csname LTb\endcsname{\color{black}}%
|
||||
\expandafter\def\csname LTa\endcsname{\color{black}}%
|
||||
\expandafter\def\csname LT0\endcsname{\color[rgb]{1,0,0}}%
|
||||
\expandafter\def\csname LT1\endcsname{\color[rgb]{0,1,0}}%
|
||||
\expandafter\def\csname LT2\endcsname{\color[rgb]{0,0,1}}%
|
||||
\expandafter\def\csname LT3\endcsname{\color[rgb]{1,0,1}}%
|
||||
\expandafter\def\csname LT4\endcsname{\color[rgb]{0,1,1}}%
|
||||
\expandafter\def\csname LT5\endcsname{\color[rgb]{1,1,0}}%
|
||||
\expandafter\def\csname LT6\endcsname{\color[rgb]{0,0,0}}%
|
||||
\expandafter\def\csname LT7\endcsname{\color[rgb]{1,0.3,0}}%
|
||||
\expandafter\def\csname LT8\endcsname{\color[rgb]{0.5,0.5,0.5}}%
|
||||
\else
|
||||
% gray
|
||||
\def\colorrgb#1{\color{black}}%
|
||||
\def\colorgray#1{\color[gray]{#1}}%
|
||||
\expandafter\def\csname LTw\endcsname{\color{white}}%
|
||||
\expandafter\def\csname LTb\endcsname{\color{black}}%
|
||||
\expandafter\def\csname LTa\endcsname{\color{black}}%
|
||||
\expandafter\def\csname LT0\endcsname{\color{black}}%
|
||||
\expandafter\def\csname LT1\endcsname{\color{black}}%
|
||||
\expandafter\def\csname LT2\endcsname{\color{black}}%
|
||||
\expandafter\def\csname LT3\endcsname{\color{black}}%
|
||||
\expandafter\def\csname LT4\endcsname{\color{black}}%
|
||||
\expandafter\def\csname LT5\endcsname{\color{black}}%
|
||||
\expandafter\def\csname LT6\endcsname{\color{black}}%
|
||||
\expandafter\def\csname LT7\endcsname{\color{black}}%
|
||||
\expandafter\def\csname LT8\endcsname{\color{black}}%
|
||||
\fi
|
||||
\fi
|
||||
\setlength{\unitlength}{0.0500bp}%
|
||||
\ifx\gptboxheight\undefined%
|
||||
\newlength{\gptboxheight}%
|
||||
\newlength{\gptboxwidth}%
|
||||
\newsavebox{\gptboxtext}%
|
||||
\fi%
|
||||
\setlength{\fboxrule}{0.5pt}%
|
||||
\setlength{\fboxsep}{1pt}%
|
||||
\begin{picture}(4896.00,2014.00)%
|
||||
\gplgaddtomacro\gplbacktext{%
|
||||
\csname LTb\endcsname%
|
||||
\put(792,264){\makebox(0,0)[r]{\strut{}\footnotesize{unkown}}}%
|
||||
\csname LTb\endcsname%
|
||||
\put(792,545){\makebox(0,0)[r]{\strut{}\footnotesize{standing}}}%
|
||||
\csname LTb\endcsname%
|
||||
\put(792,825){\makebox(0,0)[r]{\strut{}\footnotesize{walking}}}%
|
||||
\csname LTb\endcsname%
|
||||
\put(792,1106){\makebox(0,0)[r]{\strut{}\footnotesize{stairs\_up}}}%
|
||||
\csname LTb\endcsname%
|
||||
\put(792,1386){\makebox(0,0)[r]{\strut{}\footnotesize{stairs\_down}}}%
|
||||
\csname LTb\endcsname%
|
||||
\put(924,44){\makebox(0,0){\strut{}\footnotesize{0 s}}}%
|
||||
\put(1443,44){\makebox(0,0){\strut{}\footnotesize{20 s}}}%
|
||||
\put(1962,44){\makebox(0,0){\strut{}\footnotesize{40 s}}}%
|
||||
\put(2481,44){\makebox(0,0){\strut{}\footnotesize{60 s}}}%
|
||||
\put(3000,44){\makebox(0,0){\strut{}\footnotesize{80 s}}}%
|
||||
\put(3519,44){\makebox(0,0){\strut{}\footnotesize{100 s}}}%
|
||||
\put(4038,44){\makebox(0,0){\strut{}\footnotesize{120 s}}}%
|
||||
\put(4557,44){\makebox(0,0){\strut{}\footnotesize{140 s}}}%
|
||||
}%
|
||||
\gplgaddtomacro\gplfronttext{%
|
||||
\csname LTb\endcsname%
|
||||
\put(1106,1807){\makebox(0,0){\strut{}\footnotesize{1}}}%
|
||||
\put(1625,1807){\makebox(0,0){\strut{}\footnotesize{2}}}%
|
||||
\put(2105,1807){\makebox(0,0){\strut{}\footnotesize{3}}}%
|
||||
\put(2429,1807){\makebox(0,0){\strut{}\footnotesize{4}}}%
|
||||
\put(2727,1807){\makebox(0,0){\strut{}\footnotesize{5}}}%
|
||||
\put(3246,1807){\makebox(0,0){\strut{}\footnotesize{6}}}%
|
||||
\put(3791,1807){\makebox(0,0){\strut{}\footnotesize{7}}}%
|
||||
\put(4090,1807){\makebox(0,0){\strut{}\footnotesize{8}}}%
|
||||
\put(4401,1807){\makebox(0,0){\strut{}\footnotesize{9}}}%
|
||||
\put(4686,1807){\makebox(0,0){\strut{}\footnotesize{10}}}%
|
||||
}%
|
||||
\gplbacktext
|
||||
\put(0,0){\includegraphics{activity_over_time}}%
|
||||
\gplfronttext
|
||||
\end{picture}%
|
||||
\endgroup
|
||||
72
tex/gfx/activity/plot.gp
Normal file
72
tex/gfx/activity/plot.gp
Normal file
@@ -0,0 +1,72 @@
|
||||
set terminal epslatex size 3.4,1.4
|
||||
set output "activity_over_time.tex"
|
||||
|
||||
#set terminal eps size 3.4,1.4
|
||||
#set output "activity_over_time.eps"
|
||||
|
||||
#set multiplot layout 2,1
|
||||
#set format y "\\footnotesize{%.1f m}"
|
||||
set format x "\\footnotesize{%.0f s}"
|
||||
set key horizontal
|
||||
set yrange[0:17]
|
||||
set xrange[0:91]
|
||||
set xtics nomirror
|
||||
set ytics nomirror
|
||||
set key at graph 1,1 opaque box samplen 1.0 spacing 0.8 width -13
|
||||
|
||||
set lmargin 7.0
|
||||
set tmargin 0.3
|
||||
set rmargin 0.4
|
||||
set bmargin 1.2
|
||||
|
||||
|
||||
set object 1 rectangle from 0,0 to 14,15 fs solid noborder fc rgb "#eeeeee" behind # standing
|
||||
set label 1 "\\footnotesize{1}" at 7,5.5 center rotate by 0 front
|
||||
|
||||
set object 2 rectangle from 14,0 to 40,15 fs solid noborder fc rgb "#dddddd" behind # walking down the way
|
||||
set label 2 "\\footnotesize{2}" at 27,5.5 center rotate by 0 front
|
||||
|
||||
set object 3 rectangle from 40,0 to 51,15 fs solid noborder fc rgb "#eeeeee" behind # ignoring the shortest path
|
||||
set label 3 "\\footnotesize{3}" at 45.5,5.5 center rotate by 0 front
|
||||
|
||||
set object 4 rectangle from 51,0 to 65,15 fs solid noborder fc rgb "#dddddd" behind # stairwell
|
||||
set label 4 "\\footnotesize{4}" at 58,5.5 center rotate by 0 front
|
||||
|
||||
set object 5 rectangle from 65,0 to 74,15 fs solid noborder fc rgb "#eeeeee" behind # exit stairwell
|
||||
set label 5 "\\footnotesize{5}" at 69.5,5.5 center rotate by 0 front
|
||||
|
||||
set object 6 rectangle from 74,0 to 105,15 fs solid noborder fc rgb "#dddddd" behind # floor
|
||||
set label 6 "\\footnotesize{6}" at 89.5,5.5 center rotate by 0 front
|
||||
|
||||
set object 7 rectangle from 105,0 to 116,15 fs solid noborder fc rgb "#eeeeee" behind # stair down to f1
|
||||
set label 7 "\\footnotesize{7}" at 110.5,5.5 center rotate by 0 front
|
||||
|
||||
set object 8 rectangle from 116,0 to 128,15 fs solid noborder fc rgb "#dddddd" behind # floor
|
||||
set label 8 "\\footnotesize{8}" at 122,5.5 center rotate by 0 front
|
||||
|
||||
set object 9 rectangle from 128,0 to 140,15 fs solid noborder fc rgb "#eeeeee" behind # stair down to f0
|
||||
set label 9 "\\footnotesize{9}" at 134,5.5 center rotate by 0 front
|
||||
|
||||
set object 10 rectangle from 140,0 to 150,15 fs solid noborder fc rgb "#dddddd" behind # end
|
||||
set label 10 "\\footnotesize{10}" at 145,5.5 center rotate by 0 front
|
||||
|
||||
#set object 900 rectangle at graph 0.5, 0.94 size graph 0.65,0.12 fs solid fc rgb "#ffffff" lc rgb "#000000"
|
||||
#set label 901 "\\textcolor[rgb]{0,0,0}{\\footnotesize{simple}}" at graph 0.28, 0.94 center front
|
||||
#set label 902 "\\textcolor[rgb]{0,0,0.8}{\\footnotesize{multi}}" at graph 0.49, 0.94 center front
|
||||
#set label 903 "\\textcolor[rgb]{0.8,0,0}{\\footnotesize{shortest}}" at graph 0.71, 0.94 center front
|
||||
|
||||
set grid y
|
||||
set format y ""
|
||||
set ytics 0 4
|
||||
set ytics add ("\\footnotesize{unkown}" 0)
|
||||
set ytics add ("\\footnotesize{standing}" 1)
|
||||
set ytics add ("\\footnotesize{walking}" 2)
|
||||
set ytics add ("\\footnotesize{stairs\\_up}" 3)
|
||||
set ytics add ("\\footnotesize{stairs\\_down}" 4)
|
||||
|
||||
unset key
|
||||
set yrange[0:6]
|
||||
set xrange[0:151]
|
||||
|
||||
plot \
|
||||
"act_bergwerk_path4_nexus_simple_interval0.dat" using ($0/2+0):1 with lines title "\\footnotesize{simple}\\hspace{-1.5mm}" lw 1.2 lc rgb "#000000"
|
||||
Reference in New Issue
Block a user