# Nakafa Learning Content

> For AI agents: use [llms.txt](https://nakafa.com/llms.txt) for the site index. Markdown versions are available by appending `.md` to content URLs or sending `Accept: text/markdown`.

URL: https://nakafa.com/id/materi/matematika/fungsi-dan-pemodelannya/grafik-fungsi-logaritma
Source: https://raw.githubusercontent.com/nakafaai/nakafa.com/refs/heads/main/packages/contents/material/lesson/mathematics/function-modeling/logarithmic-function-graph/id.mdx

Pelajari cara menggambar grafik fungsi logaritma secara bertahap. Lihat transformasi, asimtot, dan karakteristik utamanya lewat visualisasi interaktif.

---

## Mengenal Grafik Fungsi Logaritma

Pernahkah kalian memperhatikan bagaimana suara berkurang intensitasnya saat kita menjauh dari sumbernya? Atau bagaimana pH larutan berubah? Fenomena-fenomena ini dapat dimodelkan dengan grafik fungsi logaritma. Mari kita pelajari karakteristik dan cara menggambar grafik fungsi logaritma.

## Karakteristik Grafik Logaritma

Grafik fungsi logaritma memiliki bentuk yang khas dan berbeda dengan fungsi-fungsi lainnya. Mari kita lihat grafik dasar $$y = \log_b x$$ untuk berbagai nilai basis.

Visible text: Grafik fungsi logaritma memiliki bentuk yang khas dan berbeda dengan fungsi-fungsi lainnya. Mari kita lihat grafik dasar untuk berbagai nilai basis.

Component: LineEquation
Props:
- title: Perbandingan Grafik Logaritma dengan Basis Berbeda
- description: Grafik fungsi logaritma untuk $$b > 1$$.
  Visible text: Grafik fungsi logaritma untuk .
- data: [
{
points: Array.from({ length: 100 }, (_, i) => {
const x = (i / 99) * 10 + 0.1;
return { x, y: Math.log2(x), z: 0 };
}),
color: getColor("SKY"),
labels: [{ text: "y = log₂ x", at: 70, offset: [0.5, -0.4, 0] }],
showPoints: false,
},
{
points: Array.from({ length: 100 }, (_, i) => {
const x = (i / 99) * 10 + 0.1;
return { x, y: Math.log10(x), z: 0 };
}),
color: getColor("ROSE"),
labels: [{ text: "y = log₁₀ x", at: 70, offset: [0.5, -0.5, 0] }],
showPoints: false,
},
{
points: Array.from({ length: 100 }, (_, i) => {
const x = (i / 99) * 10 + 0.1;
return { x, y: Math.log(x), z: 0 };
}),
color: getColor("EMERALD"),
labels: [{ text: "y = ln x", at: 70, offset: [0.5, -0.5, 0] }],
showPoints: false,
},
]
- cameraPosition: [0, 0, 15]
- showZAxis: false

### Sifat-sifat Penting Grafik Logaritma

Untuk fungsi $$f(x) = \log_b x$$ dengan $$b > 1$$:

Visible text: Untuk fungsi dengan :

1. **Domain**: $$x > 0$$ (hanya bilangan positif)
2. **Range**: Semua bilangan real ($$-\infty < y < \infty$$)
3. **Titik potong sumbu $$x$$**: $$(1, 0)$$ karena $$\log_b 1 = 0$$
4. **Asimtot vertikal**: Sumbu $$y$$ ($$x = 0$$)
5. **Perilaku fungsi**:
   - Naik untuk $$b > 1$$
   - Turun untuk $$0 < b < 1$$

Visible text: 1. **Domain**: (hanya bilangan positif)
2. **Range**: Semua bilangan real ()
3. **Titik potong sumbu **: karena 
4. **Asimtot vertikal**: Sumbu ()
5. **Perilaku fungsi**:
 - Naik untuk 
 - Turun untuk

## Menggambar Grafik Fungsi Logaritma

Mari kita pelajari langkah-langkah menggambar grafik fungsi logaritma dengan contoh konkret.

1. **Menggambar $$y = \log_2 x$$**

   Untuk menggambar grafik ini, kita buat tabel nilai dengan memilih nilai $$x$$ yang merupakan pangkat dari $$2$$:

   | $$x$$            | $$\frac{1}{8}$$ | $$\frac{1}{4}$$ | $$\frac{1}{2}$$ | $$1$$ | $$2$$ | $$4$$ | $$8$$ |
   | ---------------------------------- | --------------------------------- | --------------------------------- | --------------------------------- | --- | --- | --- | --- |
   | $$y = \log_2 x$$ | $$-3$$ | $$-2$$ | $$-1$$ | $$0$$ | $$1$$ | $$2$$ | $$3$$ |

   <LineEquation
     title={
       <>
         Grafik $$y = \log_2 x$$
       </>
     }
     description="Perhatikan titik-titik penting dan bentuk kurva."
     data={[
       {
         points: Array.from({ length: 100 }, (_, i) => {
           const x = (i / 99) * 10 + 0.01;
           return { x, y: Math.log2(x), z: 0 };
         }),
         color: getColor("SKY"),
         labels: [{ text: "y = log₂ x", at: 50, offset: [0.5, 1, 0] }],
         showPoints: false,
       },
       {
         points: [
           { x: 0.125, y: -3, z: 0 },
           { x: 0.25, y: -2, z: 0 },
           { x: 0.5, y: -1, z: 0 },
           { x: 1, y: 0, z: 0 },
           { x: 2, y: 1, z: 0 },
           { x: 4, y: 2, z: 0 },
           { x: 8, y: 3, z: 0 },
         ],
         color: getColor("ROSE"),
         showPoints: true,
         labels: [{ text: "(1, 0)", at: 3, offset: [0.5, 0.5, 0] }],
       },
     ]}
     cameraPosition={[0, 0, 15]}
     showZAxis={false}
   />

2. **Menggambar $$y = \log_{\frac{1}{3}} x$$**

   Untuk basis $$0 < b < 1$$, grafik akan menurun:

   | $$x$$                        | $$\frac{1}{27}$$ | $$\frac{1}{9}$$ | $$\frac{1}{3}$$ | $$1$$ | $$3$$ | $$9$$ | $$27$$ |
   | ---------------------------------------------- | ---------------------------------- | --------------------------------- | --------------------------------- | --- | --- | --- | --- |
   | $$y = \log_{\frac{1}{3}} x$$ | $$3$$ | $$2$$ | $$1$$ | $$0$$ | $$-1$$ | $$-2$$ | $$-3$$ |

   <LineEquation
     title={
       <>
         Grafik $$y = \log_{\frac{1}{3}} x$$
       </>
     }
     description="Grafik menurun karena basis kurang dari 1."
     data={[
       {
         points: Array.from({ length: 100 }, (_, i) => {
           const x = (i / 99) * 10 + 0.01;
           return { x, y: Math.log(x) / Math.log(1 / 3), z: 0 };
         }),
         color: getColor("ROSE"),
         labels: [{ text: "y = log₁/₃ x", at: 30, offset: [0.5, -1, 0] }],
         showPoints: false,
       },
       {
         points: [
           { x: 1 / 27, y: 3, z: 0 },
           { x: 1 / 9, y: 2, z: 0 },
           { x: 1 / 3, y: 1, z: 0 },
           { x: 1, y: 0, z: 0 },
           { x: 3, y: -1, z: 0 },
           { x: 9, y: -2, z: 0 },
         ],
         color: getColor("PURPLE"),
         showPoints: true,
         labels: [{ text: "(1, 0)", at: 3, offset: [0.5, 0.5, 0] }],
       },
     ]}
     cameraPosition={[0, 0, 15]}
     showZAxis={false}
   />

Visible text: 1. **Menggambar **

 Untuk menggambar grafik ini, kita buat tabel nilai dengan memilih nilai yang merupakan pangkat dari :

 | | | | | | | | |
 | ---------------------------------- | --------------------------------- | --------------------------------- | --------------------------------- | --- | --- | --- | --- |
 | | | | | | | | |

 <LineEquation
 title={
 <>
 Grafik 
 </>
 }
 description="Perhatikan titik-titik penting dan bentuk kurva."
 data={[
 {
 points: Array.from({ length: 100 }, (_, i) => {
 const x = (i / 99) * 10 + 0.01;
 return { x, y: Math.log2(x), z: 0 };
 }),
 color: getColor("SKY"),
 labels: [{ text: "y = log₂ x", at: 50, offset: [0.5, 1, 0] }],
 showPoints: false,
 },
 {
 points: [
 { x: 0.125, y: -3, z: 0 },
 { x: 0.25, y: -2, z: 0 },
 { x: 0.5, y: -1, z: 0 },
 { x: 1, y: 0, z: 0 },
 { x: 2, y: 1, z: 0 },
 { x: 4, y: 2, z: 0 },
 { x: 8, y: 3, z: 0 },
 ],
 color: getColor("ROSE"),
 showPoints: true,
 labels: [{ text: "(1, 0)", at: 3, offset: [0.5, 0.5, 0] }],
 },
 ]}
 cameraPosition={[0, 0, 15]}
 showZAxis={false}
 />

2. **Menggambar **

 Untuk basis , grafik akan menurun:

 | | | | | | | | |
 | ---------------------------------------------- | ---------------------------------- | --------------------------------- | --------------------------------- | --- | --- | --- | --- |
 | | | | | | | | |

 <LineEquation
 title={
 <>
 Grafik 
 </>
 }
 description="Grafik menurun karena basis kurang dari 1."
 data={[
 {
 points: Array.from({ length: 100 }, (_, i) => {
 const x = (i / 99) * 10 + 0.01;
 return { x, y: Math.log(x) / Math.log(1 / 3), z: 0 };
 }),
 color: getColor("ROSE"),
 labels: [{ text: "y = log₁/₃ x", at: 30, offset: [0.5, -1, 0] }],
 showPoints: false,
 },
 {
 points: [
 { x: 1 / 27, y: 3, z: 0 },
 { x: 1 / 9, y: 2, z: 0 },
 { x: 1 / 3, y: 1, z: 0 },
 { x: 1, y: 0, z: 0 },
 { x: 3, y: -1, z: 0 },
 { x: 9, y: -2, z: 0 },
 ],
 color: getColor("PURPLE"),
 showPoints: true,
 labels: [{ text: "(1, 0)", at: 3, offset: [0.5, 0.5, 0] }],
 },
 ]}
 cameraPosition={[0, 0, 15]}
 showZAxis={false}
 />

## Perbandingan Grafik Logaritma

Mari kita bandingkan grafik logaritma dengan basis berbeda dalam satu koordinat:

Component: LineEquation
Props:
- title: Perbandingan Grafik Logaritma $$b > 1$$ dan{" "}
$$0 < b < 1$$.
  Visible text: Perbandingan Grafik Logaritma dan{" "}
.
- description: Perhatikan perbedaan arah grafik.
- data: [
{
points: Array.from({ length: 100 }, (_, i) => {
const x = (i / 99) * 8 + 0.01;
return { x, y: Math.log2(x), z: 0 };
}),
color: getColor("SKY"),
labels: [{ text: "y = log₂ x (naik)", at: 40, offset: [0.5, 0.5, 0] }],
showPoints: false,
},
{
points: Array.from({ length: 100 }, (_, i) => {
const x = (i / 99) * 8 + 0.01;
return { x, y: Math.log(x) / Math.log(0.5), z: 0 };
}),
color: getColor("ROSE"),
labels: [
{ text: "y = log₀.₅ x (turun)", at: 40, offset: [0.5, -0.5, 0] },
],
showPoints: false,
},
{
points: [
{ x: 0, y: -4, z: 0 },
{ x: 0, y: 4, z: 0 },
],
color: getColor("PURPLE"),
labels: [{ text: "x = 0 (asimtot)", at: 1, offset: [0.5, 0, 0] }],
showPoints: false,
},
]
- cameraPosition: [0, 0, 12]
- showZAxis: false

| Sifat                | $$b > 1$$  | $$0 < b < 1$$ |
| -------------------- | ---------------------------- | ------------------------------- |
| Arah grafik          | Naik (monoton naik)          | Turun (monoton turun)           |
| Domain               | $$x > 0$$  | $$x > 0$$     |
| Range                | Semua bilangan real          | Semua bilangan real             |
| Titik potong sumbu $$x$$ | $$(1, 0)$$ | $$(1, 0)$$    |
| Asimtot vertikal     | $$x = 0$$  | $$x = 0$$     |

Visible text: | Sifat | | |
| -------------------- | ---------------------------- | ------------------------------- |
| Arah grafik | Naik (monoton naik) | Turun (monoton turun) |
| Domain | | |
| Range | Semua bilangan real | Semua bilangan real |
| Titik potong sumbu | | |
| Asimtot vertikal | | |

## Transformasi Grafik Logaritma

Grafik logaritma dapat ditransformasi dengan berbagai cara:

### Translasi Vertikal

Kita dapat menggeser grafik fungsi logaritma dengan menambahkan atau mengurangi konstanta $$k$$ pada fungsi.

Visible text: Kita dapat menggeser grafik fungsi logaritma dengan menambahkan atau mengurangi konstanta pada fungsi.

Component: ContentStack
Children:

```math
y = \log_b x + k
```

Component: LineEquation
Props:
- title: Translasi Vertikal
- description: Grafik bergeser ke atas jika $$k > 0$$ dan ke bawah
jika $$k < 0$$.
  Visible text: Grafik bergeser ke atas jika dan ke bawah
jika .
- data: [
{
points: Array.from({ length: 100 }, (_, i) => {
const x = (i / 99) * 10 + 0.1;
return { x, y: Math.log2(x), z: 0 };
}),
color: getColor("PURPLE"),
labels: [{ text: "y = log₂ x", at: 40, offset: [0.5, -1, 0] }],
showPoints: false,
},
{
points: Array.from({ length: 100 }, (_, i) => {
const x = (i / 99) * 10 + 0.1;
return { x, y: Math.log2(x) + 2, z: 0 };
}),
color: getColor("SKY"),
labels: [{ text: "y = log₂ x + 2", at: 40, offset: [0.5, -1, 0] }],
showPoints: false,
},
{
points: Array.from({ length: 100 }, (_, i) => {
const x = (i / 99) * 10 + 0.1;
return { x, y: Math.log2(x) - 2, z: 0 };
}),
color: getColor("ROSE"),
labels: [{ text: "y = log₂ x - 2", at: 40, offset: [0.5, -1, 0] }],
showPoints: false,
},
]
- cameraPosition: [0, 0, 15]
- showZAxis: false

### Translasi Horizontal

Kita dapat menggeser grafik fungsi logaritma dengan menambahkan atau mengurangi konstanta $$h$$ pada fungsi.

Visible text: Kita dapat menggeser grafik fungsi logaritma dengan menambahkan atau mengurangi konstanta pada fungsi.

Component: ContentStack
Children:

```math
y = \log_b (x - h)
```

Component: LineEquation
Props:
- title: Translasi Horizontal
- description: Grafik bergeser ke kanan jika $$h > 0$$ dan ke kiri
jika $$h < 0$$.
  Visible text: Grafik bergeser ke kanan jika dan ke kiri
jika .
- data: [
{
points: Array.from({ length: 100 }, (_, i) => {
const x = (i / 99) * 10 + 0.1;
return { x, y: Math.log2(x), z: 0 };
}),
color: getColor("PURPLE"),
labels: [{ text: "y = log₂ x", at: 40, offset: [0.5, 1, 0] }],
showPoints: false,
},
{
points: Array.from({ length: 100 }, (_, i) => {
const x = (i / 99) * 8 + 2.1;
return { x, y: Math.log2(x - 2), z: 0 };
}),
color: getColor("EMERALD"),
labels: [{ text: "y = log₂(x - 2)", at: 40, offset: [1, -1, 0] }],
showPoints: false,
},
]
- cameraPosition: [0, 0, 15]
- showZAxis: false

## Latihan

1. Buatlah tabel nilai dan gambarlah grafik fungsi:

   - $$y = \log_3 x$$
   - $$y = \log_{\frac{1}{2}} x$$

2. Tentukan domain, range, dan asimtot dari fungsi $$f(x) = \log_5 (x + 3)$$.

3. Jika $$f(x) = \log_2 x$$ dan $$g(x) = \log_2 (x - 4)$$, tentukan:

   - Pergeseran grafik $$g(x)$$ terhadap $$f(x)$$
   - Domain dari $$g(x)$$

4. Sketsa grafik $$y = \log_3 x + 2$$ dan tentukan titik potong dengan sumbu $$y$$.

Visible text: 1. Buatlah tabel nilai dan gambarlah grafik fungsi:

 - 
 - 

2. Tentukan domain, range, dan asimtot dari fungsi .

3. Jika dan , tentukan:

 - Pergeseran grafik terhadap 
 - Domain dari 

4. Sketsa grafik dan tentukan titik potong dengan sumbu .

### Kunci Jawaban

1. Tabel nilai:

   Untuk $$y = \log_3 x$$:
   | $$x$$ | $$\frac{1}{9}$$ | $$\frac{1}{3}$$ | $$1$$ | $$3$$ | $$9$$ |
   |-------------------------|-------------------------------------|------------------------------------|----|----|----|
   | $$y$$ | $$-2$$ | $$-1$$ | $$0$$ | $$1$$ | $$2$$ |

   Untuk $$y = \log_{\frac{1}{2}} x$$:
   | $$x$$ | $$\frac{1}{4}$$ | $$\frac{1}{2}$$ | $$1$$ | $$2$$ | $$4$$ |
   |-------------------------|-------------------------------------|------------------------------------|----|----|----|
   | $$y$$ | $$2$$ | $$1$$ | $$0$$ | $$-1$$ | $$-2$$ |

2. Untuk $$f(x) = \log_5 (x + 3)$$:

   - Domain: $$x + 3 > 0 \Rightarrow x > -3$$
   - Range: Semua bilangan real
   - Asimtot vertikal: $$x = -3$$

3. Untuk $$g(x) = \log_2 (x - 4)$$:

   - Pergeseran: $$4 \text{ satuan}$$ ke kanan
   - Domain: $$x - 4 > 0 \Rightarrow x > 4$$

4. Untuk $$y = \log_3 x + 2$$:

   - Grafik $$y = \log_3 x$$ digeser $$2 \text{ satuan}$$ ke atas
   - Tidak ada titik potong dengan sumbu $$y$$ karena domain adalah $$x > 0$$

   <ContentBlock>
     <LineEquation
       title={
         <>
           Sketsa Grafik $$y = \log_3 x + 2$$
         </>
       }
       description={<>Grafik logaritma basis $$3$$ yang digeser $$2 \text{ satuan}$$ ke atas.</>}
       data={[
         {
           points: Array.from({ length: 100 }, (_, i) => {
             const x = (i / 99) * 10 + 0.01;
             return { x, y: Math.log(x) / Math.log(3), z: 0 };
           }),
           color: getColor("PURPLE"),
           labels: [{ text: "y = log₃ x", at: 40, offset: [0.5, -0.5, 0] }],
           showPoints: false,
         },
         {
           points: Array.from({ length: 100 }, (_, i) => {
             const x = (i / 99) * 10 + 0.01;
             return { x, y: Math.log(x) / Math.log(3) + 2, z: 0 };
           }),
           color: getColor("EMERALD"),
           labels: [{ text: "y = log₃ x + 2", at: 50, offset: [0.5, 1, 0] }],
           showPoints: false,
         },
         {
           points: [
             { x: 1 / 9, y: Math.log(1 / 9) / Math.log(3) + 2, z: 0 },
             { x: 1 / 3, y: Math.log(1 / 3) / Math.log(3) + 2, z: 0 },
             { x: 1, y: 2, z: 0 },
             { x: 3, y: 3, z: 0 },
             { x: 9, y: 4, z: 0 },
           ],
           color: getColor("ROSE"),
           showPoints: true,
           labels: [
             { text: "(1, 2)", at: 2, offset: [0, 1, 0] },
             { text: "(3, 3)", at: 3, offset: [0, 0.5, 0] },
           ],
         },
         {
           points: [
             { x: -0.5, y: 2, z: 0 },
             { x: 10, y: 2, z: 0 },
           ],
           color: getColor("PURPLE"),
           labels: [{ text: "y = 2", at: 0, offset: [-0.5, 0.3, 0] }],
           showPoints: false,
         },
         {
           points: [
             { x: 0, y: -2, z: 0 },
             { x: 0, y: 5, z: 0 },
           ],
           color: getColor("PURPLE"),
           labels: [{ text: "x = 0 (asimtot)", at: 1, offset: [0.5, 0, 0] }],
           showPoints: false,
         },
       ]}
       cameraPosition={[0, 0, 15]}
       showZAxis={false}
     />
   </ContentBlock>

Visible text: 1. Tabel nilai:

 Untuk :
 | | | | | | |
 |-------------------------|-------------------------------------|------------------------------------|----|----|----|
 | | | | | | |

 Untuk :
 | | | | | | |
 |-------------------------|-------------------------------------|------------------------------------|----|----|----|
 | | | | | | |

2. Untuk :

 - Domain: 
 - Range: Semua bilangan real
 - Asimtot vertikal: 

3. Untuk :

 - Pergeseran: ke kanan
 - Domain: 

4. Untuk :

 - Grafik digeser ke atas
 - Tidak ada titik potong dengan sumbu karena domain adalah 

 <ContentBlock>
 <LineEquation
 title={
 <>
 Sketsa Grafik 
 </>
 }
 description={<>Grafik logaritma basis yang digeser ke atas.</>}
 data={[
 {
 points: Array.from({ length: 100 }, (_, i) => {
 const x = (i / 99) * 10 + 0.01;
 return { x, y: Math.log(x) / Math.log(3), z: 0 };
 }),
 color: getColor("PURPLE"),
 labels: [{ text: "y = log₃ x", at: 40, offset: [0.5, -0.5, 0] }],
 showPoints: false,
 },
 {
 points: Array.from({ length: 100 }, (_, i) => {
 const x = (i / 99) * 10 + 0.01;
 return { x, y: Math.log(x) / Math.log(3) + 2, z: 0 };
 }),
 color: getColor("EMERALD"),
 labels: [{ text: "y = log₃ x + 2", at: 50, offset: [0.5, 1, 0] }],
 showPoints: false,
 },
 {
 points: [
 { x: 1 / 9, y: Math.log(1 / 9) / Math.log(3) + 2, z: 0 },
 { x: 1 / 3, y: Math.log(1 / 3) / Math.log(3) + 2, z: 0 },
 { x: 1, y: 2, z: 0 },
 { x: 3, y: 3, z: 0 },
 { x: 9, y: 4, z: 0 },
 ],
 color: getColor("ROSE"),
 showPoints: true,
 labels: [
 { text: "(1, 2)", at: 2, offset: [0, 1, 0] },
 { text: "(3, 3)", at: 3, offset: [0, 0.5, 0] },
 ],
 },
 {
 points: [
 { x: -0.5, y: 2, z: 0 },
 { x: 10, y: 2, z: 0 },
 ],
 color: getColor("PURPLE"),
 labels: [{ text: "y = 2", at: 0, offset: [-0.5, 0.3, 0] }],
 showPoints: false,
 },
 {
 points: [
 { x: 0, y: -2, z: 0 },
 { x: 0, y: 5, z: 0 },
 ],
 color: getColor("PURPLE"),
 labels: [{ text: "x = 0 (asimtot)", at: 1, offset: [0.5, 0, 0] }],
 showPoints: false,
 },
 ]}
 cameraPosition={[0, 0, 15]}
 showZAxis={false}
 />
 </ContentBlock>