Этот вопрос возник из другой проблемы Stackoverflow 1 :
Моя проблема связана с выпуском ярлыков с осями X и Y из сюжета cartopy-геопанда.Я хотел бы изменить свой текстовый объект от каждой из моих меток (оси X и Y) в соответствии с определенным правилом.
Например, я хотел бы заменить десятичный разделитель ('.') На разделитель запятых (',') из моих ярлыков оси X и Y.
Вот код, который можетне делайте этого:
import matplotlib.pyplot as plt
import cartopy.crs as ccrs
import geopandas as gpd
Geopandas_DF = gpd.read_file('my_file.shp')
# setting projection and Transform
Projection=ccrs.PlateCarree()
Transform = ccrs.Geodetic(globe=ccrs.Globe(ellipse='GRS80'))
Fig, Ax = plt.subplots(1,1, subplot_kw={'projection': Projection})
Geopandas_DF.plot(ax=Ax, transform=Ax.transData)
gl = Ax.gridlines(crs=Projection , draw_labels=True, linewidth=0.5,
alpha=0.4, color='k', linestyle='--')
gl.top_labels = False
gl.right_labels = False
### Creating a function to change my Ticklabels:
def Ticker_corrector(ax):
"""
Parameter:ax, axes whose axis X and Y should be applied the function
"""
## Correcting the Axis X and Y of the main Axes
Xticks = ax.get_xticklabels()
for i in Xticks:
T = i.get_text()
T = T.replace('.',',')
i = i.set_text(T)
print(T)
ax.set_xticklabels(Xticks)
## Correcting the Axis Y
Yticks = ax.get_yticklabels()
for i in Xticks:
T = i.get_text()
T = T.replace('.',',')
i = i.set_text(T)
print(T)
ax.set_yticklabels(Yticks)
return ax
Ax = Ticker_corrector(Ax)
Fig.show()
Одна интересная часть кода выше состоит в том, что он работает без проблем.Питон не указывает на какую-либо ошибку в нем, и он рисует рисунок без предупреждения об ошибке.
Тем не менее, метки Ticklabels остаются неизменными.Поэтому мне нужна помощь с этой проблемой.
Я благодарю вас за ваше время.
С уважением,