code: def fci_grid_definition(axis, nobs):
      """FCI grid definition on X or Y axis."""
      if axis == "X":
          long_name = "azimuth angle encoded as column"
          standard_name = "projection_x_coordinate"
      else:
          long_name = "zenith angle encoded as row"
          standard_name = "projection_y_coordinate"
  
      return {
          "format": "i2",
          "shape": ("pixels",),
          "add_offset": -0.155619516,
          "axis": axis,
          "long_name": long_name,
          "scale_factor": 5.58878e-5,
          "standard_name": standard_name,
          "units": "radian",
          "valid_range": np.asarray([1, 5568]),
          "default_data": lambda: np.clip(
              np.round(np.random.normal(2000, 500, nobs)),
              1,
              2**16 - 1,
          ),
      }
  
imports: from datetime import datetime
  import numpy
  import xarray
  from satpy.tests.reader_tests.test_netcdf_utils import FakeNetCDF4FileHandler
label_desc: Use image node_id 9 for calling a global function with example usage: fci_grid_definition(axis, nobs) and returns: dict