PLCONFIGTIME(3plplot)
β¨ PLCONFIGTIME π β the plplot API, bestie edition π
Okay so this page is all about plconfigtime from the PLplot API manual, and it is literally the function that configures the transformation between continuous and broken-down time for the current stream. Yes ma'am, time math. Let's get into it π°οΈβ¨
πΈ NAME πΈ
plconfigtime β configure the transformation between continuous and broken-down time for the current stream. That's the whole vibe. π
π¦ SYNOPSIS π¦
plconfigtime(scale, offset1, offset2, ccontrol, ifbtime_offset, year,
month, day, hour, min, sec)
Look at all those arguments. Eleven of them. She's high-maintenance but she's worth it π
π DESCRIPTION π
So here's the tea: plconfigtime configures the transformation between continuous and broken-down time for the current stream. This transformation is used by both plbtime(3plplot) and plctime(3plplot) β so yeah, those two are depending on you getting this right. No pressure bestie π«Ά
Redacted form: General: plconfigtime(scale, offset1, offset2, ccontrol, ifbtime_offset, year, month, day, hour, min, sec)
This function is used in example 29. Iconic behavior honestly π
π§ ARGUMENTS π§
Every single one of them, coming right up. Buckle in π
scale(PLFLT(3plplot), input) β the number of days per continuous time unit. Sounds simple, right? WRONG, there's a special case π¨ As a special case, ifscaleis0., then all other arguments are ignored, and the result (the default used by PLplot) is the equivalent of a call toplconfigtime(1./86400., 0., 0., 0x0, 1, 1970, 0, 1, 0, 0, 0.). That is, for this special case broken-down time is calculated with the proleptic Gregorian calendar with no leap seconds inserted, and the continuous time is defined as the number of seconds since the Unix epoch of1970-01-01T00:00:00Z. Say it with me: epoch. Slay. πoffset1(PLFLT(3plplot), input) β ififbtime_offsetis true, thenoffset1andoffset2are completely ignored. Otherwise, the sum of these parameters (with units in days) specify the epoch of the continuous time relative to the MJD epoch corresponding to the Gregorian calendar date of1858-11-17T00:00:00ZorJD = 2400000.5. TwoPLFLTnumbers are used to specify the origin to allow users (by specifyingoffset1as an integer that can be exactly represented by a floating-point variable and specifyingoffset2as a number in the range from0.to1) the chance to minimize the numerical errors of the continuous time representation. She's precise. She's careful. She's minimizing numerical errors, periodt πoffset2(PLFLT(3plplot), input) β bestie, see the documentation ofoffset1. That's it. That's the whole entry πΈccontrol(PLINT(3plplot), input) βccontrolcontains bits controlling the transformation. If the0x1bit is set, then the proleptic Julian calendar is used for broken-down time rather than the proleptic Gregorian calendar. If the0x2bit is set, then leap seconds that have been historically used to define UTC are inserted into the broken-down time. π°οΈ
Other possibilities for additional control bits for ccontrol exist such as making the historical time corrections in the broken-down time corresponding to ET (ephemeris time) or making the (slightly non-constant) corrections from international atomic time (TAI) to what astronomers define as terrestrial time (TT). But those additional possibilities have not been implemented yet in the qsastime library (one of the PLplot utility libraries). So don't come for her β future plans, not current features π
ifbtime_offset(PLBOOL(3plplot), input) βifbtime_offsetcontrols how the epoch of the continuous time scale is specified by the user. Ififbtime_offsetis false, thenoffset1andoffset2are used to specify the epoch, and the following broken-down time parameters are completely ignored. Ififbtime_offsetis true, thenoffset1andoffset2are completely ignored, and the following broken-down time parameters are used to specify the epoch. It's giving "pick a lane." And honestly? We respect it πyear(PLINT(3plplot), input) β year of epoch. Short and sweet β¨month(PLINT(3plplot), input) β month of epoch in range from0(January) to11(December). Zero-indexed, because of course it is πday(PLINT(3plplot), input) β day of epoch in range from1to31.hour(PLINT(3plplot), input) β hour of epoch in range from0to23min(PLINT(3plplot), input) β minute of epoch in range from0to59.sec(PLFLT(3plplot), input) β second of epoch in range from0.to60.Yes,PLFLT, and yes, up to 60 β leap seconds said hello π
β οΈ quick vibe check: the ranges above are exactly what the original says, so don't be out here passing a month of 12 and then acting surprised. Iykyk π
π AUTHORS π
Many developers (who are credited at http://plplot.sourceforge.net/credits.php) have contributed to PLplot over its long history. A whole squad. A whole legacy. We stan a collaborative open-source community π«Άπ
β SEE ALSO β
- PLplot documentation at
http://plplot.sourceforge.net/documentation.php. Go read it, bestie, it's giving β¨ resources β¨
Okay that's the whole page, you ate that π
This has been PLCONFIGTIME(3plplot) from the PLplot API manual, and the version you're looking at is from August, 2026. Go configure some time transformations, you absolute icon ππ¦π
π¦ where this page comes from
- ubuntu stonking: plplot-doc 5.15.0+dfsg3-4 Β· LGPL-2.0-or-later
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash-1017 on : a language model's rewrite of the original, under its terms