class_docstr: Contains attributes and methods for modifying the aesthetic
  style of the chart.
code: def __init__(self, chart, layout):
      self._chart = chart
      self.color_palette = BasePalette._get_palette_class(self._chart)
      self._layout = layout
      self._set_width_and_height(layout)
  
      self.settings = {
          "legend": {
              "figure.legend.orientation": "horizontal",
              "figure.legend.location": "top_left",
              "figure.legend.label_text_font": "helvetica",
          },
          "chart": {
              "figure.background_fill_color": "white",
              "figure.xgrid.grid_line_color": None,
              "figure.ygrid.grid_line_color": None,
              "figure.border_fill_color": "white",
              "figure.min_border_left": 60,
              "figure.min_border_right": 60,
              "figure.min_border_top": 40,
              "figure.min_border_bottom": 60,
              "figure.xaxis.axis_line_width": 1,
              "figure.yaxis.axis_line_width": 1,
              "figure.yaxis.axis_line_color": "#C0C0C0",
              "figure.xaxis.axis_line_color": "#C0C0C0",
              "figure.yaxis.axis_label_text_color": "#666666",
              "figure.xaxis.axis_label_text_color": "#666666",
              "figure.xaxis.major_tick_line_color": "#C0C0C0",
              "figure.xaxis.minor_tick_line_color": "#C0C0C0",
              "figure.yaxis.major_tick_line_color": "#C0C0C0",
              "figure.yaxis.minor_tick_line_color": "#C0C0C0",
              "figure.xaxis.major_label_text_color": "#898989",
              "figure.yaxis.major_label_text_color": "#898989",
              "figure.outline_line_alpha": 1,
              "figure.outline_line_color": "white",
              "figure.xaxis.axis_label_text_font": "helvetica",
              "figure.yaxis.axis_label_text_font": "helvetica",
              "figure.yaxis.major_label_text_font": "helvetica",
              "figure.xaxis.major_label_text_font": "helvetica",
              "figure.yaxis.axis_label_text_font_style": "bold",
              "figure.xaxis.axis_label_text_font_style": "bold",
              "figure.yaxis.axis_label_text_font_size": "11pt",
              "figure.xaxis.axis_label_text_font_size": "11pt",
              "figure.yaxis.major_label_text_font_size": "10pt",
              "figure.xaxis.major_label_text_font_size": "10pt",
              "figure.title.text_font": "helvetica",
              "figure.title.text_color": "#333333",
              "figure.title.text_font_size": "18pt",
              "figure.xaxis.minor_tick_out": 1,
              "figure.yaxis.minor_tick_out": 1,
              "figure.xaxis.major_tick_line_width": 1,
              "figure.yaxis.major_tick_line_width": 1,
              "figure.xaxis.major_tick_out": 4,
              "figure.yaxis.major_tick_out": 4,
              "figure.xaxis.major_tick_in": 0,
              "figure.yaxis.major_tick_in": 0,
          },
          "categorical_xaxis": {
              # Used for grouped categorical axes
              "figure.xaxis.separator_line_alpha": 0,
              "figure.xaxis.subgroup_text_font": "helvetica",
              "figure.xaxis.group_text_font": "helvetica",
              "figure.xaxis.subgroup_text_font_size": "11pt",
              "figure.xaxis.group_text_font_size": "11pt",
              "figure.x_range.factor_padding": 0.25,
          },
          "categorical_yaxis": {
              # Used for grouped categorical axes
              "figure.yaxis.separator_line_alpha": 0,
              "figure.yaxis.subgroup_text_font": "helvetica",
              "figure.yaxis.group_text_font": "helvetica",
              "figure.y_range.factor_padding": 0.25,
              "figure.yaxis.subgroup_text_font_size": "11pt",
              "figure.yaxis.group_text_font_size": "11pt",
          },
          "categorical_xyaxis": {
              # Used for grouped categorical axes
              "figure.yaxis.separator_line_alpha": 0,
              "figure.yaxis.subgroup_text_font": "helvetica",
              "figure.yaxis.group_text_font": "helvetica",
              "figure.yaxis.subgroup_text_font_size": "11pt",
              "figure.yaxis.group_text_font_size": "11pt",
              # Used for grouped categorical axes
              "figure.xaxis.separator_line_alpha": 0,
              "figure.xaxis.subgroup_text_font": "helvetica",
              "figure.xaxis.group_text_font": "helvetica",
              "figure.xaxis.subgroup_text_font_size": "11pt",
              "figure.xaxis.group_text_font_size": "11pt",
          },
          "subtitle": {
              "subtitle_align": "left",
              "subtitle_text_color": "#666666",
              "subtitle_location": "above",
              "subtitle_text_size": "12pt",
              "subtitle_text_font": "helvetica",
          },
          "text_callout_and_plot": {
              "font": self._font_value("helvetica"),
          },
          "interval_plot": {
              "space_between_bars": 0.25,
              "margin": 0.05,
              "bar_width": 0.9,
              "space_between_categories": 1.15,
              # Note each stem is drawn twice
              "interval_end_stem_size": 0.1 / 2,
              "interval_midpoint_stem_size": 0.03 / 2,
          },
          "line_plot": {
              "line_cap": "round",
              "line_join": "round",
              "line_width": 4,
              "line_dash": "solid",
          },
          "second_y_axis": {
              "figure.yaxis[1].axis_label_text_color": "#666666",
              "figure.yaxis[1].axis_line_color": "#C0C0C0",
              "figure.yaxis[1].axis_line_width": 1,
              "figure.yaxis[1].major_tick_line_color": "#C0C0C0",
              "figure.yaxis[1].minor_tick_line_color": "#C0C0C0",
              "figure.yaxis[1].major_label_text_color": "#898989",
              "figure.yaxis[1].axis_label_text_font": "helvetica",
              "figure.yaxis[1].major_label_text_font": "helvetica",
              "figure.yaxis[1].axis_label_text_font_style": "bold",
              "figure.yaxis[1].axis_label_text_font_size": "11pt",
              "figure.yaxis[1].major_label_text_font_size": "10pt",
              "figure.yaxis[1].minor_tick_out": 1,
              "figure.yaxis[1].major_tick_line_width": 1,
              "figure.yaxis[1].major_tick_out": 4,
              "figure.yaxis[1].major_tick_in": 0,
          },
      }
  
      config_filename = options.get_option("config.style_settings")
      try:
          self._settings_from_yaml(
              config_filename, apply_chart_settings=False
          )
      except FileNotFoundError:
          pass
  
imports: from itertools import cycle
  import yaml
  import bokeh
  from bokeh.core.properties import value
  from chartify._core import colors
  from chartify._core.options import options
  from packaging import version
label_desc: Use image node_id 1 to create a new Style object  with example: obj = Style(chart, layout)