From d3a7cdc3ee78b50aa8d85dc7c640a01be5d68cc6 Mon Sep 17 00:00:00 2001 From: Andreas Tsouchlos Date: Sat, 23 Dec 2023 18:36:59 +0100 Subject: [PATCH] Add Makefile & more examples --- Makefile | 11 + example.tex => examples/colorschemes.tex | 0 examples/csv_manipulation.tex | 177 ++++++++ res/random.csv | 129 ++++++ res/random_multiple.csv | 513 +++++++++++++++++++++++ 5 files changed, 830 insertions(+) create mode 100644 Makefile rename example.tex => examples/colorschemes.tex (100%) create mode 100644 examples/csv_manipulation.tex create mode 100644 res/random.csv create mode 100644 res/random_multiple.csv diff --git a/Makefile b/Makefile new file mode 100644 index 0000000..28fb9cf --- /dev/null +++ b/Makefile @@ -0,0 +1,11 @@ +SRCS=$(shell find examples -type f -name "*.tex") +PDFS=$(shell echo $(SRCS:.tex=.pdf) | sed -e "s/examples\\///g") + +%.pdf: examples/%.tex + latexmk $< + +all: $(PDFS) + +clean: + rm -rf build + diff --git a/example.tex b/examples/colorschemes.tex similarity index 100% rename from example.tex rename to examples/colorschemes.tex diff --git a/examples/csv_manipulation.tex b/examples/csv_manipulation.tex new file mode 100644 index 0000000..dd47639 --- /dev/null +++ b/examples/csv_manipulation.tex @@ -0,0 +1,177 @@ +\documentclass{article} + +% Packages necessary for common.tex +\usepackage{amsmath} +\usepackage{pgfplots} +\pgfplotsset{compat=newest} + +% Other packages +\usepackage{float} +\usepackage{subcaption} +\usepackage[a4paper, total={6.5in, 9in}]{geometry} +\usetikzlibrary{positioning} +\usepackage{ifthen} + + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +%%%%%% Set common options %%%%%%% +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + + +\input{common.tex} +\pgfplotsset{colorscheme/rocket} + + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +%%%%%%% Actual Document %%%%%%%%% +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + + +\title{Manipulation of CSV data} +\author{} +\date{} + + +\begin{document} + +\maketitle + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +% 'discard if lt' & 'discard if gt' + +\begin{figure}[H] + \centering + + \begin{subfigure}[t]{0.49\textwidth} + + %%%%%%%%%%%%%%%%% + % Crop along x axis + + \begin{tikzpicture} + \begin{axis}[ + width=\textwidth, + height=0.55\textwidth, + xmin=-5, xmax=132, + ymin=-3, ymax=6, + ] + % Plot all data as reference + \addplot+[mark=none, line width=1pt] + table[col sep=comma, x=x, y=y] + {res/random.csv}; + \addlegendentry{All data} + + % Crop and plot desired data + \addplot+[scol2, mark=none, line width=1pt] + table[col sep=comma, x=x, y=y, discard if lt={x}{40}, + discard if gt={x}{80}] + {res/random.csv}; + \addlegendentry{Cropped data} + \end{axis} + \end{tikzpicture} + + \caption{\texttt{discard if lt/gt} used to crop along $x$-axis} + \end{subfigure}% + \hfill% + \begin{subfigure}[t]{0.49\textwidth} + + %%%%%%%%%%%%%%%%% + % Crop along y axis + + \begin{tikzpicture} + \begin{axis}[ + width=\textwidth, + height=0.55\textwidth, + xmin=-5, xmax=132, + ymin=-3, ymax=6, + ] + % Plot all data as reference + \addplot+[mark=*] + table[col sep=comma, x=x, y=y] + {res/random.csv}; + \addlegendentry{All data} + + % Crop and plot desired data + \addplot+[scol2, only marks] + table[col sep=comma, x=x, y=y, discard if gt={y}{1}, + discard if lt={y}{-1}] + {res/random.csv}; + \addlegendentry{Cropped data} + \end{axis} + \end{tikzpicture} + + \caption{\texttt{discard if lt/gt} used to crop along $y$-axis} + \end{subfigure} + + \caption{\texttt{discard if lt} and \texttt{discard if gt}} +\end{figure} + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +% 'discard if' & 'discard if not' + +\begin{figure}[H] + \centering + + \begin{subfigure}[t]{0.49\textwidth} + + %%%%%%%%%%%%%%%%% + % Select single datastream + + \begin{tikzpicture} + \begin{axis}[ + width=\textwidth, + height=0.5\textwidth, + ymin=-4,ymax=14, + ] + % Plot all data as reference + \foreach \i in {0.0, 3.0, 6.0, 9.0} { + \addplot[scol0!20, mark=none, line width=1pt, forget plot] + table[col sep=comma, x=x, y=y, discard if not={mu}{\i}] + {res/random_multiple.csv}; + } + \addlegendimage{scol0!20, mark=none, line width=1pt, forget plot} + \addlegendentry{All data} + + % Select and plot desired datastream + \addplot+[scol2, mark=none, line width=1pt] + table[col sep=comma, x=x, y=y, discard if not={mu}{3.0}] + {res/random_multiple.csv}; + \addlegendentry{$\mu=3.0$} + \end{axis} + \end{tikzpicture} + + \caption{\texttt{discard if not} used to select single datastream} + \end{subfigure}% + \begin{subfigure}[t]{0.49\textwidth} + + %%%%%%%%%%%%%%%%% + % Discard single datastream + + \begin{tikzpicture} + \begin{axis}[ + width=\textwidth, + height=0.5\textwidth, + ymin=-4,ymax=14, + ] + % Plot all data as reference + \addplot+[scol0!20, only marks, point meta=\thisrow{mu}] + table[col sep=comma, x=x, y=y] + {res/random_multiple.csv}; + \addlegendentry{All data} + + % Discard datastream and plot desired data + \addplot+[scol1, only marks, point meta=\thisrow{mu}] + table[col sep=comma, x=x, y=y, discard if={mu}{6.0}] + {res/random_multiple.csv}; + \addlegendentry{All except discarded} + \end{axis} + \end{tikzpicture} + + \caption{\texttt{discard if} used to discard single datastream} + \end{subfigure} + + \caption{\texttt{discard if} and \texttt{discard if not}} +\end{figure} + + +\end{document} + diff --git a/res/random.csv b/res/random.csv new file mode 100644 index 0000000..fe668f8 --- /dev/null +++ b/res/random.csv @@ -0,0 +1,129 @@ +x,y +0,-1.13732725438736 +1,1.5919832354572523 +2,-1.6064930088409208 +3,1.030013689889431 +4,-0.44125640098278945 +5,0.503998644095984 +6,1.1860547280920992 +7,-0.8386730808575481 +8,-0.4789794372826604 +9,-0.6016626649298871 +10,1.2643152723738609 +11,-0.4343753770329363 +12,-1.9019853073588915 +13,-0.45066095422767666 +14,0.9071910294469501 +15,-0.2634371055799787 +16,0.7331464662492323 +17,-1.6664798018371787 +18,0.5954780561064251 +19,0.8621308391039594 +20,-0.18373292284888781 +21,0.2539752150426439 +22,0.16800765897424735 +23,-0.02120398387239827 +24,1.1843715572867999 +25,0.3965849961876547 +26,-0.9031099727056421 +27,-0.3808169140759629 +28,2.7922869845480767 +29,-0.8279379215611151 +30,-0.03668561709859059 +31,0.8320869084639638 +32,0.2979597941326193 +33,0.2855524980134765 +34,1.2493559922085804 +35,-0.12612786025148115 +36,0.37880308361606013 +37,-0.28390566170113984 +38,-0.1683768141074095 +39,-0.949229057564634 +40,-1.2313866182044362 +41,-0.5842353803409914 +42,-1.0187492911153144 +43,-0.6387195695647908 +44,0.968215333512659 +45,-0.9541767248920768 +46,-0.7238175545654183 +47,-0.4716066968543211 +48,-2.296427327661435 +49,0.0419001979706312 +50,1.8764180861767628 +51,-0.8896758930065772 +52,1.0234520822417332 +53,-1.9896367539108486 +54,0.18590043400102876 +55,-0.2619291989741318 +56,0.20954716344137278 +57,-0.20061271234127404 +58,-0.30706188888628266 +59,-1.3110092904920883 +60,0.45941444304307744 +61,-1.3373495767229746 +62,2.6965844211065564 +63,-1.217532237907974 +64,0.2397117225155465 +65,1.5319481173957488 +66,-1.3583653180349033 +67,0.25379202729365186 +68,0.1972123876513032 +69,-0.13476234473532442 +70,2.132867802416318 +71,-0.5720388910327979 +72,-0.016618718555398305 +73,-1.1686566488438228 +74,0.3053985263407672 +75,-0.42370482429331907 +76,0.6382830988812391 +77,-0.020809226570539286 +78,-0.6944967436396547 +79,-1.240150256074881 +80,0.5740410970365567 +81,0.954899758617465 +82,1.8996635049609978 +83,1.884428533689216 +84,-0.6897747502138287 +85,-0.6546335128545098 +86,-0.8460364463751073 +87,-0.571911615177671 +88,0.4076021118877513 +89,-0.2943984445839808 +90,-0.4279163769716974 +91,0.35686172548654777 +92,0.2273696210373922 +93,-0.9202981068315161 +94,0.20827011536456355 +95,-1.723858660855622 +96,-1.0076532232462354 +97,-0.3170942137593396 +98,0.24303109515135415 +99,0.07689243609461709 +100,-0.13803148823497646 +101,2.210435854264219 +102,-1.498617561949655 +103,-1.2090818675140287 +104,-1.509943651024493 +105,0.64047034901717 +106,-0.7247626470451775 +107,0.1217685866911771 +108,0.8337630934932774 +109,-0.008864632246469219 +110,0.19860008820754113 +111,2.328885947387146 +112,1.794196471497067 +113,1.325315144378164 +114,0.04421384691058939 +115,0.143634609083007 +116,-1.0222931353884488 +117,-0.4030820398830066 +118,-1.3720900836490675 +119,-0.4934545232900141 +120,0.1367119132685584 +121,-0.22404492957397007 +122,-0.40230508021903777 +123,-0.6578941269194497 +124,0.6123155163562329 +125,1.05382264266869 +126,-0.5449030704433011 +127,-0.8297851538758689 diff --git a/res/random_multiple.csv b/res/random_multiple.csv new file mode 100644 index 0000000..a1556b4 --- /dev/null +++ b/res/random_multiple.csv @@ -0,0 +1,513 @@ +x,y,mu +0,0.734523348833303,0.0 +1,-1.224037648532118,0.0 +2,0.12740396798342196,0.0 +3,1.3716357319134496,0.0 +4,0.06555889099056576,0.0 +5,0.07841595310291531,0.0 +6,0.2340276512090509,0.0 +7,-0.5533656945896459,0.0 +8,0.3463620740227469,0.0 +9,0.8243820104949475,0.0 +10,0.4813231835825553,0.0 +11,-0.9510805895531538,0.0 +12,1.9308434710001918,0.0 +13,-0.5313069213983053,0.0 +14,0.5716142807663168,0.0 +15,0.4467138451323015,0.0 +16,0.4274697644747647,0.0 +17,0.22687513146376515,0.0 +18,0.5529070363165761,0.0 +19,-2.493347605034286,0.0 +20,-1.507305081166146,0.0 +21,0.3681787570900008,0.0 +22,2.318467028067955,0.0 +23,-0.5181114582195019,0.0 +24,-0.0046618397258439215,0.0 +25,0.6809552899867202,0.0 +26,-1.7753293230946878,0.0 +27,-0.06823912384807258,0.0 +28,0.10146964430123218,0.0 +29,-0.2726776940574052,0.0 +30,-0.7281312274627353,0.0 +31,-0.2198129141757685,0.0 +32,1.5753731016450225,0.0 +33,-1.5074896325495264,0.0 +34,-1.7061958861604478,0.0 +35,-0.8315683707853929,0.0 +36,-1.3341117823872093,0.0 +37,1.0670250560997407,0.0 +38,0.4987078381283533,0.0 +39,1.7925891054110892,0.0 +40,1.6099431571524887,0.0 +41,-1.1356165408408632,0.0 +42,-0.7032912380808569,0.0 +43,-1.0746731543786698,0.0 +44,-0.05822505634021117,0.0 +45,-0.6698922732480829,0.0 +46,0.22932770840272126,0.0 +47,-0.34785989564935554,0.0 +48,0.45384335387125246,0.0 +49,0.9280156907833359,0.0 +50,-1.5612843206886924,0.0 +51,0.5506693725166064,0.0 +52,1.0724964883393509,0.0 +53,0.08146587697739088,0.0 +54,-0.8289530623313647,0.0 +55,0.1445007074741892,0.0 +56,1.3510103029391451,0.0 +57,-0.9452829854782673,0.0 +58,-0.256794337424904,0.0 +59,0.9188851121535593,0.0 +60,-0.04133362963713569,0.0 +61,-0.8419259406252493,0.0 +62,-0.9855035561328721,0.0 +63,0.0402504659551575,0.0 +64,0.5814870849974859,0.0 +65,0.11477323575936485,0.0 +66,-0.19700364190349792,0.0 +67,-1.0487895972165777,0.0 +68,0.9586233269949481,0.0 +69,0.2925890423071986,0.0 +70,-0.5278695517670636,0.0 +71,0.5103270633166069,0.0 +72,-0.9220426385778423,0.0 +73,-1.288047452319449,0.0 +74,-0.49695716115296035,0.0 +75,-0.6778967583469189,0.0 +76,1.1451240892629166,0.0 +77,0.28168634647577206,0.0 +78,0.43418669259129167,0.0 +79,-1.6986044166764291,0.0 +80,-0.1294624064363705,0.0 +81,1.714149012563706,0.0 +82,-0.614868635296141,0.0 +83,0.17534749600068403,0.0 +84,-0.6666863424294728,0.0 +85,0.6053250630414264,0.0 +86,0.814041816343046,0.0 +87,0.642329477294142,0.0 +88,-0.6779000894543422,0.0 +89,-0.5140025652958204,0.0 +90,-0.019823204524792158,0.0 +91,-0.4188050959109324,0.0 +92,0.5872305960818768,0.0 +93,0.08940893221551088,0.0 +94,0.6049801323128513,0.0 +95,0.8127504330297943,0.0 +96,1.372175588707743,0.0 +97,-2.6054711992128894,0.0 +98,0.3566240732443252,0.0 +99,1.101515875443954,0.0 +100,1.2277540633789843,0.0 +101,-0.10549967793276277,0.0 +102,0.2732761660900581,0.0 +103,1.6612296677441607,0.0 +104,0.6583195606681883,0.0 +105,-1.1114481416538484,0.0 +106,1.2706302457340444,0.0 +107,-0.8165254574730065,0.0 +108,-2.1313563226408325,0.0 +109,-1.6011929356418861,0.0 +110,-0.6359037601844311,0.0 +111,0.5819876709429042,0.0 +112,0.3312154151353651,0.0 +113,-0.39409260557571363,0.0 +114,0.30228470322648165,0.0 +115,-1.2300856532449425,0.0 +116,0.2352458196795061,0.0 +117,-0.6830920450442247,0.0 +118,-0.21312779200324894,0.0 +119,0.16124085099353144,0.0 +120,2.3911807700493113,0.0 +121,-0.16611613438538672,0.0 +122,0.7022920449173549,0.0 +123,-0.4785019494573002,0.0 +124,-1.5330944738827974,0.0 +125,-0.5098590307081559,0.0 +126,0.9181500668070861,0.0 +127,-0.8846718571575196,0.0 +0,2.169426931470944,3.0 +1,3.525102505408203,3.0 +2,5.113358975247618,3.0 +3,1.5307999562319516,3.0 +4,2.580202626434093,3.0 +5,4.00096006111214,3.0 +6,1.4772970924425615,3.0 +7,2.128724281450749,3.0 +8,2.3869537947568764,3.0 +9,3.7662628014724535,3.0 +10,2.830243134371583,3.0 +11,4.221781129016566,3.0 +12,2.3226786845187153,3.0 +13,2.829341372874075,3.0 +14,3.030478672814942,3.0 +15,3.6008337624729627,3.0 +16,5.040749469189079,3.0 +17,2.086253721539345,3.0 +18,3.690999184720149,3.0 +19,3.464968858836472,3.0 +20,4.027577821521752,3.0 +21,2.4244343715518775,3.0 +22,2.4853262515819017,3.0 +23,4.057650652567277,3.0 +24,4.098170442131243,3.0 +25,1.9058660241078604,3.0 +26,2.5479439713895293,3.0 +27,3.6089433704560903,3.0 +28,3.810781383894511,3.0 +29,3.1850263756180626,3.0 +30,3.931813111050788,3.0 +31,4.169489619834902,3.0 +32,3.99848100338625,3.0 +33,2.1254024749839346,3.0 +34,2.3859037652105375,3.0 +35,1.5002988094022678,3.0 +36,2.8231583578817028,3.0 +37,3.7882136567418234,3.0 +38,1.869247934365222,3.0 +39,2.3495179765464287,3.0 +40,4.724375108797094,3.0 +41,3.353060868762474,3.0 +42,4.130298976365653,3.0 +43,4.506981319906336,3.0 +44,2.5481736130681667,3.0 +45,4.12395101642346,3.0 +46,3.0012455997864067,3.0 +47,3.431109015171298,3.0 +48,1.8239609513425572,3.0 +49,3.3932021955823077,3.0 +50,2.806448477772826,3.0 +51,2.8953891585554845,3.0 +52,1.2332454672970639,3.0 +53,3.154221350952736,3.0 +54,4.099139037453745,3.0 +55,3.905841394264469,3.0 +56,4.21716869997236,3.0 +57,2.5958682469587293,3.0 +58,2.3592303057688246,3.0 +59,2.838041033429507,3.0 +60,2.751262569159223,3.0 +61,4.339087898118313,3.0 +62,1.3712535280540008,3.0 +63,1.2252593586214986,3.0 +64,4.328313409993063,3.0 +65,3.260268749107191,3.0 +66,2.5669501835550568,3.0 +67,2.4765218620527314,3.0 +68,3.1245682980195193,3.0 +69,2.8770149487513654,3.0 +70,2.048464032353661,3.0 +71,2.866232655011438,3.0 +72,1.3926360456728444,3.0 +73,2.6028364804396147,3.0 +74,2.4669783464285246,3.0 +75,0.9993324682211582,3.0 +76,4.846604839540245,3.0 +77,2.6552252351977965,3.0 +78,2.596124400484242,3.0 +79,3.037445870873495,3.0 +80,4.204360025016286,3.0 +81,2.8584965975088714,3.0 +82,4.342576052182984,3.0 +83,1.753523627739775,3.0 +84,1.5424308656527983,3.0 +85,3.5402923384275944,3.0 +86,3.0825723033894206,3.0 +87,1.3188248767507147,3.0 +88,2.385007155918926,3.0 +89,1.9549293114214912,3.0 +90,2.6571366422903786,3.0 +91,3.0067736085099313,3.0 +92,2.3328743071161857,3.0 +93,2.616663080224252,3.0 +94,2.40119092795206,3.0 +95,4.0940160322249195,3.0 +96,2.3976331164814058,3.0 +97,2.2947966287473354,3.0 +98,3.2206794518730266,3.0 +99,2.4904975813038286,3.0 +100,2.3768565760305678,3.0 +101,4.1412846075516025,3.0 +102,2.570953656067571,3.0 +103,1.3415937538327092,3.0 +104,3.599215326608894,3.0 +105,2.1189006986170957,3.0 +106,1.9282539931387714,3.0 +107,2.864159249915642,3.0 +108,2.7325516061200914,3.0 +109,3.7858224744495113,3.0 +110,3.164007334708936,3.0 +111,2.1258215535024347,3.0 +112,3.5345824857793615,3.0 +113,3.570779681573453,3.0 +114,1.9226590312201375,3.0 +115,1.016562111260317,3.0 +116,3.7267149862751863,3.0 +117,2.8517485488385774,3.0 +118,2.2046508163930723,3.0 +119,2.7464838137568472,3.0 +120,2.5782393265726538,3.0 +121,1.6783460342752927,3.0 +122,2.6902464229478573,3.0 +123,2.380338824233214,3.0 +124,3.012634460132286,3.0 +125,2.594978797856564,3.0 +126,1.7801678506989287,3.0 +127,2.150961148739084,3.0 +0,4.606823519453638,6.0 +1,5.5989256671630745,6.0 +2,7.318675944192757,6.0 +3,7.6280645861002165,6.0 +4,6.319500409495257,6.0 +5,6.217611499330338,6.0 +6,6.160390870362295,6.0 +7,7.325625450510127,6.0 +8,5.825009693893169,6.0 +9,7.237579399777723,6.0 +10,3.8718061145570073,6.0 +11,6.960345747639168,6.0 +12,4.376219021440043,6.0 +13,5.30620568486396,6.0 +14,7.277272469371656,6.0 +15,6.462361849055432,6.0 +16,3.9572740929400734,6.0 +17,7.065528548536081,6.0 +18,7.352836700186313,6.0 +19,7.515580138244245,6.0 +20,6.4305332336336045,6.0 +21,5.391219837228267,6.0 +22,5.242826925085088,6.0 +23,5.826161204051401,6.0 +24,5.859937268209259,6.0 +25,8.215681120524525,6.0 +26,5.4634664157894095,6.0 +27,6.4454771703954075,6.0 +28,5.930916547697155,6.0 +29,7.820777015624318,6.0 +30,7.263678528160638,6.0 +31,8.12152263923181,6.0 +32,6.028154061563205,6.0 +33,6.13548777532245,6.0 +34,4.906560293080185,6.0 +35,5.318499990436772,6.0 +36,5.92585128813067,6.0 +37,6.9194086185857335,6.0 +38,3.835248161739062,6.0 +39,6.3766588309328665,6.0 +40,5.63787367704175,6.0 +41,7.346783913183216,6.0 +42,5.19440489438985,6.0 +43,4.225826467168622,6.0 +44,6.4258150009891395,6.0 +45,5.719255384712843,6.0 +46,6.564095397224136,6.0 +47,5.903318908552789,6.0 +48,6.01806657798671,6.0 +49,8.162519985820953,6.0 +50,6.688331543295205,6.0 +51,6.094135077078458,6.0 +52,4.335919539929565,6.0 +53,4.9059135154153655,6.0 +54,4.4908627164859425,6.0 +55,7.015935834817419,6.0 +56,5.3740221112876485,6.0 +57,5.704855544954757,6.0 +58,4.995824502014024,6.0 +59,4.208507654551982,6.0 +60,5.652290516786126,6.0 +61,6.635784588240233,6.0 +62,6.191777507016014,6.0 +63,5.321142139321102,6.0 +64,5.96672378122459,6.0 +65,8.251172286987414,6.0 +66,5.572585205120499,6.0 +67,5.5049597374118715,6.0 +68,4.803509731449258,6.0 +69,8.066785861870468,6.0 +70,4.903988773084038,6.0 +71,5.888739175461495,6.0 +72,4.607892079730539,6.0 +73,5.264649237382299,6.0 +74,6.108712055380668,6.0 +75,6.8660941773369455,6.0 +76,6.862086656236525,6.0 +77,5.96410113370345,6.0 +78,4.8251851301975766,6.0 +79,7.288846729066372,6.0 +80,7.151172037959492,6.0 +81,7.042742570066952,6.0 +82,6.789645444820112,6.0 +83,6.685898622848322,6.0 +84,5.775664887682934,6.0 +85,5.657201548885771,6.0 +86,5.218757436656485,6.0 +87,7.153842092330238,6.0 +88,5.50090655790487,6.0 +89,4.380357125981895,6.0 +90,7.253026421794335,6.0 +91,5.056046133299549,6.0 +92,5.998914458105865,6.0 +93,7.61112284848649,6.0 +94,5.89323395244031,6.0 +95,6.19679637877695,6.0 +96,5.516261988011989,6.0 +97,6.524307939929529,6.0 +98,4.057679859707036,6.0 +99,7.041785909829391,6.0 +100,6.764111234706647,6.0 +101,4.471671972207558,6.0 +102,4.21099804108949,6.0 +103,6.742549835890967,6.0 +104,6.182294291801984,6.0 +105,6.059983539406632,6.0 +106,9.516849125718995,6.0 +107,6.538134172664648,6.0 +108,7.008320689895642,6.0 +109,6.773896783236559,6.0 +110,4.747115580937852,6.0 +111,5.807474781947272,6.0 +112,4.524428511482488,6.0 +113,5.780442640816161,6.0 +114,5.198023926972153,6.0 +115,5.711942724000656,6.0 +116,6.405527218092158,6.0 +117,5.225807999985261,6.0 +118,7.559909905873487,6.0 +119,5.8112656906442455,6.0 +120,5.238250463606161,6.0 +121,5.681521210082015,6.0 +122,5.719491287175643,6.0 +123,6.455647362121313,6.0 +124,5.617406487354772,6.0 +125,4.339150852330887,6.0 +126,5.2159700586748095,6.0 +127,5.197645367264323,6.0 +0,10.074507194453178,9.0 +1,7.642834939828584,9.0 +2,8.959651852677272,9.0 +3,9.835158251781024,9.0 +4,7.2945805287963,9.0 +5,6.103062100276741,9.0 +6,9.768139878116468,9.0 +7,7.932081773567787,9.0 +8,9.655506945918441,9.0 +9,7.563290474624946,9.0 +10,9.012982928953328,9.0 +11,8.394398582435418,9.0 +12,10.239989638673086,9.0 +13,6.678729216634709,9.0 +14,10.892508257634368,9.0 +15,8.890250143855082,9.0 +16,9.279474890067297,9.0 +17,8.862958863630164,9.0 +18,10.099711714590136,9.0 +19,8.342778599221973,9.0 +20,9.632955626116704,9.0 +21,8.726747192997985,9.0 +22,7.866743169354847,9.0 +23,10.619656919502415,9.0 +24,9.469113082525121,9.0 +25,9.248747654158814,9.0 +26,6.502498305986986,9.0 +27,7.0828795790695,9.0 +28,9.163026754923571,9.0 +29,9.716372042644698,9.0 +30,9.09319297421143,9.0 +31,9.201948445745467,9.0 +32,8.00498963309328,9.0 +33,9.866083358660223,9.0 +34,7.440517791371054,9.0 +35,11.339077280588244,9.0 +36,9.855889202867097,9.0 +37,8.59643646203935,9.0 +38,8.985309232549124,9.0 +39,8.57296445473239,9.0 +40,8.62269514223579,9.0 +41,9.723856454400977,9.0 +42,8.960072394973052,9.0 +43,8.269447200838314,9.0 +44,10.592488422242745,9.0 +45,8.67694038122863,9.0 +46,10.78263831463321,9.0 +47,10.022149839328383,9.0 +48,8.460416611017221,9.0 +49,7.609869455095898,9.0 +50,7.58083191710645,9.0 +51,8.627948735151447,9.0 +52,8.099314504203678,9.0 +53,10.430508260000757,9.0 +54,8.90241945273863,9.0 +55,8.674947131722611,9.0 +56,8.270626227738848,9.0 +57,9.537168870408003,9.0 +58,10.278745091667655,9.0 +59,9.053466222286168,9.0 +60,9.15840279734312,9.0 +61,8.079042532553972,9.0 +62,8.388338684806753,9.0 +63,10.186836398881603,9.0 +64,8.723067015540465,9.0 +65,9.77013750519579,9.0 +66,9.029574000845665,9.0 +67,7.838510328913905,9.0 +68,7.6093472466985315,9.0 +69,8.95533804879982,9.0 +70,9.501003554253675,9.0 +71,10.21950441427473,9.0 +72,8.606456488717257,9.0 +73,8.34114277919858,9.0 +74,9.956230245721496,9.0 +75,10.745671380916031,9.0 +76,9.603252646475887,9.0 +77,7.40637795397906,9.0 +78,7.242154008979375,9.0 +79,10.228755202822365,9.0 +80,9.565831649823416,9.0 +81,8.655980329865757,9.0 +82,8.959257776580635,9.0 +83,10.357871186841578,9.0 +84,10.070420121063762,9.0 +85,9.818026166427849,9.0 +86,9.62052913054561,9.0 +87,7.672546779908393,9.0 +88,10.039376452210002,9.0 +89,8.116452134089174,9.0 +90,7.401718198709535,9.0 +91,9.400630644985931,9.0 +92,8.587826634796986,9.0 +93,9.421895244583938,9.0 +94,8.940202946618973,9.0 +95,9.029233202841228,9.0 +96,7.9296331459850675,9.0 +97,7.869659112262588,9.0 +98,9.002048250570477,9.0 +99,7.724892216479145,9.0 +100,10.257550444614596,9.0 +101,9.127328661421817,9.0 +102,8.131108654637583,9.0 +103,9.542262876538535,9.0 +104,8.428802031233461,9.0 +105,9.838799017809936,9.0 +106,8.58253330489674,9.0 +107,8.04945140126139,9.0 +108,9.838666202697212,9.0 +109,7.222210710864647,9.0 +110,9.020797988316389,9.0 +111,11.198755284208564,9.0 +112,9.902311943504731,9.0 +113,8.268455052341995,9.0 +114,9.196679340508988,9.0 +115,10.085221416887418,9.0 +116,8.789187643097703,9.0 +117,9.05252474696093,9.0 +118,10.207225802526317,9.0 +119,8.456518725841255,9.0 +120,10.706072071243309,9.0 +121,6.971235017869722,9.0 +122,6.87664578474583,9.0 +123,8.046183170871416,9.0 +124,8.010525164368774,9.0 +125,8.590253197994269,9.0 +126,9.089547459354861,9.0 +127,8.961471781668173,9.0