Repository: e2nIEE/pandapower

Issue:
[bug] create_test_network().line_geodata.coords has incorrect type
### Bug report checklis

- [X] Searched the [issues page](https://github.com/e2nIEE/pandapower/issues) for similar reports

- [X] Read the relevant sections of the [documentation](https://pandapower.readthedocs.io/en/latest/about.html)

- [X] Browse the [tutorials](https://github.com/e2nIEE/pandapower/tree/develop/tutorials) and [tests](https://github.com/e2nIEE/pandapower/tree/develop/pandapower/test) for usefull code snippets and examples of use

- [X] Reproduced the issue after updating with `pip install --upgrade pandapower` (or `git pull`)

- [x] Tried basic troubleshooting (if a bug/error) like restarting the interpreter and checking the pythonpath


### Reproducible Example

```python
from pandapower.test.helper_functions import create_test_network
from pandapower.networks import mv_oberrhein

mv = mv_oberrhein()
tn = create_test_network()

print(type(mv.line_geodata.coords.at[0]))
print(type(tn.line_geodata.coords.at[0]))
print(type(mv.line_geodata.coords.at[0]) == type(tn.line_geodata.coords.at[0]))
```


### Issue Description and Traceback

create_test_network uses an incorrect type when storing geodata.
This leads to test failing with errors as a conversion to list is necessary, or test succeeding but in production the function fails because it was tested against a faulty test network.

Assuming the documentation is correct the `line_geodata.coords` should be of type list. In the create_test_network they are of type `numpy.ndarray`.

### Expected Behavior

`type(create_test_network().line_geodata.coords[0])` should be list

### Installed Versions

* python version: 3.10.11
* pandas version: 2.0.3
* networkx version: 3.1
* scipy version: 1.11.1
* numpy version: 1.24.4
* packaging version: 23.1
* tqdm version: 4.65.0
* deepdiff version: 6.3.1
* Operating System name/version: Windows 10

### Label

- [ ] Relevant labels are selected



Discussion:

Resolving patch:
diff --git a/pandapower/plotting/geo.py b/pandapower/plotting/geo.py
--- a/pandapower/plotting/geo.py
+++ b/pandapower/plotting/geo.py
@@ -23,7 +23,7 @@
     geopandas_INSTALLED = False
 
 try:
-    from pyproj import Proj, transform, Transformer
+    from pyproj import Transformer
 
     pyproj_INSTALLED = True
 except ImportError:
@@ -106,9 +106,8 @@ def _convert_xy_epsg(x, y, epsg_in=4326, epsg_out=31467):
     """
     if not pyproj_INSTALLED:
         soft_dependency_error(str(sys._getframe().f_code.co_name)+"()", "pyproj")
-    in_proj = Proj(init='epsg:%i' % epsg_in)
-    out_proj = Proj(init='epsg:%i' % epsg_out)
-    return transform(in_proj, out_proj, x, y)
+    transformer = Transformer.from_crs(f'EPSG:{epsg_in}', f'EPSG:{epsg_out}', always_xy=True)
+    return transformer.transform(x, y)
 
 
 def convert_gis_to_geodata(net, node_geodata=True, branch_geodata=True):
@@ -319,7 +318,7 @@ def dump_to_geojson(net, nodes=False, branches=False):
                     coords.append(net.pipe_geodata.loc[uid].coords)
                 coords.append([float(to_coords.x), float(to_coords.y)])
 
-            geom = geojson.LineString(row.coords.tolist() if is_pandapower else coords)
+            geom = geojson.LineString(row.coords if is_pandapower else coords)
             features.append(geojson.Feature(geometry=geom, id=uid, properties=props[uid]))
     # find and set crs if available
     crs_node = None


Test patch:
diff --git a/pandapower/test/helper_functions.py b/pandapower/test/helper_functions.py
--- a/pandapower/test/helper_functions.py
+++ b/pandapower/test/helper_functions.py
@@ -53,7 +53,7 @@ def create_test_network():
 
     pp.create_line_from_parameters(net, b2, b3, 1, name="line1", r_ohm_per_km=0.2067,
                                    ices=0.389985, c_nf_per_km=720.0, max_i_ka=0.328,
-                                   x_ohm_per_km=0.1897522, geodata=np.array([[1, 2], [3, 4]]))
+                                   x_ohm_per_km=0.1897522, geodata=[[1, 2], [3, 4]])
     # NAYY 1x150RM 0.6/1kV ir
     pp.create_line_from_parameters(net, b1, b4, 1, name="line2", r_ohm_per_km=0.876,
                                    c_nf_per_km=260.0, max_i_ka=0.123, x_ohm_per_km=0.1159876)