代码简化: fits_path = config.get("path_info", "fits_path") png_path = config.get("path_info", "fits2png_path") limb_path = config.get("path_info", "limb_path") cropped_path = config.get("path_info", "cropped_path") model_name = config.get("model_info", "model_name") model_path = config.get("model_info", "mode_path") forecast_path = config.get("path_info", "forecast_path") point_path = config.get("path_info", "point_path")
时间: 2023-12-07 07:05:25 浏览: 77
你可以使用一个循环来简化这段代码,将重复的部分放进一个列表中,然后使用字典来存储对应的键值对。以下是简化后的代码示例:
```python
info_keys = ["fits_path", "fits2png_path", "limb_path", "cropped_path", "forecast_path", "point_path"]
model_keys = ["model_name", "model_path"]
path_info = {key: config.get("path_info", key) for key in info_keys}
model_info = {key: config.get("model_info", key) for key in model_keys}
```
这样,你可以通过 `path_info["fits_path"]` 来获取 `fits_path` 的值,通过 `model_info["model_name"]` 来获取 `model_name` 的值。
相关问题
以下代码绘制图片带有网格线,取消网格线显示: map_data = sunpy.map.Map(fits_path) map_data.plot() plt.savefig(png_path)
要取消matplotlib中绘图的网格线显示,您可以使用`plt.grid(False)`函数。以下是修正后的代码示例:
```python
import matplotlib.pyplot as plt
import sunpy.map
# 读取fits文件为sunpy.map.Map对象
map_data = sunpy.map.Map(fits_path)
# 绘制图像
map_data.plot()
# 取消网格线显示
plt.grid(False)
# 保存为png格式
plt.savefig(png_path)
```
请确保将`fits_path`替换为您实际的fits文件路径和文件名,将`png_path`替换为您希望保存的png文件路径和文件名。
这样修改后,绘制的图像将不再显示网格线,并且保存为指定的png文件。
希望这对您有帮助。如果您还有其他问题,请随时提问。
map_data = sunpy.map.Map(fits_path) 不显示网格线
对于 SunPy 库中的 `sunpy.map.Map` 对象,要取消绘制网格线,您可以使用 `plot()` 方法的参数 `grid`。将其设置为 `False` 将禁用网格线的显示。以下是修改后的代码示例:
```python
import matplotlib.pyplot as plt
import sunpy.map
# 读取fits文件为sunpy.map.Map对象
map_data = sunpy.map.Map(fits_path)
# 绘制图像并取消网格线显示
map_data.plot(grid=False)
# 保存为png格式
plt.savefig(png_path)
```
请确保将 `fits_path` 替换为您实际的fits文件路径和文件名,将 `png_path` 替换为您希望保存的png文件路径和文件名。
这样修改后,绘制的图像将不再显示网格线,并且保存为指定的png文件。
希望这对您有帮助。如果您还有其他问题,请随时提问。
阅读全文