diff --git a/docs/source/python/getting_involved.rst b/docs/source/python/getting_involved.rst
index 87fa0aca37f..1f05aa9088f 100644
--- a/docs/source/python/getting_involved.rst
+++ b/docs/source/python/getting_involved.rst
@@ -47,7 +47,7 @@ less complex to use. So while in some cases it might be easy to map what's
in C++ to what's in Python, in many cases the C++ classes and methods are
used as foundations to build easier to use entities.
-.. image:: py_arch_overview.svg
+.. image:: /python/images/py_arch_overview.svg
:alt: Four layers of PyArrow architecture: .py, .pyx, .pxd and low level C++ code.
* The ``*.py`` files in the pyarrow package are usually where the entities
@@ -69,7 +69,8 @@ used as foundations to build easier to use entities.
for usage in Cython. Here the C++ classes and methods are declared as they are
so that in the other ``.pyx`` files they can be used to implement Python classes,
functions and helpers.
-* PyArrow is also based on dedicated pieces of code that are written into Arrow itself.
- Those live into ``cpp/src/arrow/python`` directory and provide the low level
+* Apart from Arrow C++ library, which dependence is mentioned in the previous line,
+ PyArrow is also based on PyArrow C++, dedicated pieces of code that live in
+ ``python/pyarrow/src/arrow/python`` directory and provide the low level
code for capabilities like converting to and from numpy or pandas and the classes
that allow to use Python objects and callbacks in C++.
\ No newline at end of file
diff --git a/docs/source/python/images/py_arch_overview.svg b/docs/source/python/images/py_arch_overview.svg
new file mode 100644
index 00000000000..8f0dd8838ca
--- /dev/null
+++ b/docs/source/python/images/py_arch_overview.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/docs/source/python/py_arch_overview.svg b/docs/source/python/py_arch_overview.svg
deleted file mode 100644
index 11f09eb8c6d..00000000000
--- a/docs/source/python/py_arch_overview.svg
+++ /dev/null
@@ -1 +0,0 @@
-
\ No newline at end of file