code: def large_plot():
      source = ColumnDataSource(data=dict(x=[0, 1], y=[0, 1]))
  
      xdr = Range1d(start=0, end=1)
      xdr.tags.append("foo")
      xdr.tags.append("bar")
  
      ydr = Range1d(start=10, end=20)
      ydr.tags.append("foo")
      ydr.tags.append(11)
  
      plot = Plot(x_range=xdr, y_range=ydr)
  
      ydr2 = Range1d(start=0, end=100)
      plot.extra_y_ranges = {"liny": ydr2}
  
      scatter = Scatter(
          x="x", y="y", fill_color="red", size=5, line_color="black"
      )
      plot.add_glyph(source, scatter, name="myscatter")
  
      line = Line(x="x", y="y")
      plot.add_glyph(source, line, name="myline")
  
      rect = Rect(x="x", y="y", width=1, height=1, fill_color="green")
      plot.add_glyph(source, rect, name="myrect")
  
      plot.add_layout(DatetimeAxis(), "below")
      plot.add_layout(LogAxis(), "left")
      plot.add_layout(LinearAxis(y_range_name="liny"), "left")
  
      plot.add_layout(Grid(dimension=0), "left")
      plot.add_layout(Grid(dimension=1), "left")
  
      plot.add_tools(
          BoxZoomTool(),
          PanTool(),
          SaveTool(),
          ResetTool(),
          WheelZoomTool(),
      )
  
      return plot
  
file_path: bokeh/tests/unit/bokeh/core/test_query.py
imports: from __future__ import annotations
  import pytest
  from bokeh.models import Axis, BoxZoomTool, ColumnDataSource, DatetimeAxis, Glyph, GlyphRenderer, Grid, Line, LinearAxis, LogAxis, PanTool, Plot, Range1d, Rect, ResetTool, SaveTool, Scatter, Tool, WheelZoomTool
  import bokeh.core.query
label_desc: Use image node_id 1 for calling a global function with example usage: large_plot() and returns: plot