package Ġk ot plot . construct ables Ċ Ċ import Ġkotlinx . serialization . Serializable Ċ import Ġk ot plot . temp . Axis Type Serializer Ċ import Ġk ot plot . temp . Serial Enum ĊĊ Ċ @ Serializable Ċ data Ġclass ĠAxis Ġinternal Ġconstructor ( ĊĠĠĠ Ġval Ġcolor : ĠColor , ĊĠĠĠ Ġval Ġtitle : ĠString , ĊĠĠĠ Ġval Ġtype : ĠAxis Type , ĊĠĠĠ Ġval Ġvisible : ĠBoolean , ĊĠĠĠ Ġval Ġrange : ĠList < Double >? Ċ ) Ġ{ ĊĠĠĠ Ġ/** ĊĠĠĠĠ Ġ* Ġ@ param Ġcolor ĠColor Ġof Ġthe Ġtitle Ġand Ġthe Ġnumbers Ġon Ġthe Ġaxis ĊĠĠĠĠ Ġ* Ġ@ param Ġtitle ĠText Ġthat Ġwill Ġbe Ġdisplayed Ġnext Ġto Ġthe Ġaxis ĊĠĠĠĠ Ġ* Ġ@ param Ġvisible ĊĠĠĠĠ Ġ* Ġ@ param Ġrange ĠThe Ġrange Ġof Ġpoints Ġthat Ġwill Ġbe Ġdisplayed Ġby Ġdefault . ĠSet Ġto Ġnull Ġto Ġmake Ġrange Ġautomatic . ĊĠĠĠĠ Ġ*/ ĊĠĠĠ Ġconstructor ( ĊĠĠĠĠĠĠĠ Ġcolor : ĠColor Ġ= ĠColor . Black , ĊĠĠĠĠĠĠĠ Ġtitle : ĠString Ġ= Ġ"", ĊĠĠĠĠĠĠĠ Ġtype : ĠAxis Type Ġ= ĠAxis Type . Linear , ĊĠĠĠĠĠĠĠ Ġvisible : ĠBoolean Ġ= Ġtrue , ĊĠĠĠĠĠĠĠ Ġrange : ĠClosed Range < Double >? Ġ= Ġnull ĊĠĠĠ Ġ) Ġ: Ġthis ( ĊĠĠĠĠĠĠĠ Ġcolor , ĊĠĠĠĠĠĠĠ Ġtitle , ĊĠĠĠĠĠĠĠ Ġtype , ĊĠĠĠĠĠĠĠ Ġvisible , ĊĠĠĠĠĠĠĠ Ġif Ġ( range Ġ== Ġnull ) Ġnull Ġelse ĠlistOf ( range . start , Ġrange . end Inclusive ) ĊĠĠĠ Ġ) Ċ } ĊĊ Ċ @ Serializable ( Axis Type Serializer :: class ) Ċ enum Ġclass ĠAxis Type ( override Ġval Ġserial Name : ĠString ?) Ġ: ĠSerial Enum Ġ{ ĊĠĠĠ Ġ/** ĊĠĠĠĠ Ġ* ĠPoints Ġon Ġthe Ġaxis Ġwill Ġbe Ġdistributed Ġeven ly Ġon Ġthe Ġrange . ĊĠĠĠĠ Ġ*/ ĊĠĠĠ ĠLinear (" linear "), ĊĠĠĠ Ġ/** ĊĠĠĠĠ Ġ* ĠValues Ġwill Ġbe Ġinterpreted Ġas Ġtheir Ġnatural Ġlog Ġ( ln ). ĠUseful Ġfor Ġlarge Ġnumbers . ĊĠĠĠĠ Ġ*/ ĊĠĠĠ ĠLog (" log "), ĊĊĠĠĠ Ġ/** ĊĠĠĠĠ Ġ* ĠValues Ġwill Ġbe Ġinterpreted Ġas Ġdates . ĊĠĠĠĠ Ġ*/ ĊĠĠĠ ĠDate (" date "), ĊĊĠĠĠ Ġ/** ĊĠĠĠĠ Ġ* ĠEach Ġpossible Ġvalue Ġwill Ġbe Ġrep res nt ed Ġon Ġthe Ġaxis ĊĠĠĠĠ Ġ*/ ĊĠĠĠ ĠCategory (" category "), ĊĊĠĠĠ Ġ/** ĊĠĠĠĠ Ġ* ĠPurpose Ġun clear . ĠIf Ġyou Ġknow Ġthe Ġpurpose Ġof Ġthis Ġplease Ġmake Ġan Ġissue . ĊĠĠĠĠ Ġ*/ ĊĠĠĠ ĠMulti Category (" mult ic ategory "); Ċ } ĊĊ