piel.visual.table.symbol
========================

.. py:module:: piel.visual.table.symbol


Attributes
----------

.. autoapisummary::

   piel.visual.table.symbol.logger


Functions
---------

.. autoapisummary::

   piel.visual.table.symbol.convert_to_pi_fraction
   piel.visual.table.symbol.convert_tuple_to_pi_fractions


Module Contents
---------------

.. py:data:: logger

.. py:function:: convert_to_pi_fraction(value: Union[float, int, str], max_denominator: int = 100) -> str

   Converts a number to the closest fraction of π in LaTeX format if possible.

   :param value: The input number or string representing a number.
   :type value: Union[float, int, str]
   :param max_denominator: The maximum denominator for the fraction (default is 100).
   :type max_denominator: int

   :returns: A LaTeX string representation of the number as a fraction of π if possible.
   :rtype: str

   .. rubric:: Examples

   >>> closest_pi_fraction(3.14159)
   '\pi'

   >>> closest_pi_fraction(1.0472)
   '\frac{\pi}{3}'

   >>> closest_pi_fraction(0.523599)
   '\frac{\pi}{6}'

   >>> closest_pi_fraction(1)
   '1'


.. py:function:: convert_tuple_to_pi_fractions(values: tuple[Union[int, float, str], Ellipsis]) -> tuple[str, Ellipsis]

   Converts each element in a tuple of numbers to a fraction of π in LaTeX format if possible.

   :param values: A tuple of numbers or strings representing numbers.
   :type values: Tuple[Union[int, float, str], ...]

   :returns: A tuple of LaTeX string representations for each number as a fraction of π if possible.
   :rtype: Tuple[str, ...]

   .. rubric:: Examples

   >>> convert_tuple_to_pi_fractions((3.14159, 1.5708, 1))
   ('\pi', '\frac{\pi}{2}', '1')

   >>> convert_tuple_to_pi_fractions((0.785398, 0.523599, 0))
   ('\frac{\pi}{4}', '\frac{\pi}{6}', '0')


