matplotlib / matplotlib/basemap
Broken Basemap rotpole projection
Chưa có ai nhận issue này.
- Ngôn ngữ chính
- Python
- Star
- 817
- Fork
- 395
- Chỉ số merge pull request
- Không có pull request nào được merge trong 30 ngày
Mô tả
Initally posted by a mistake to matplotlib/matplotlib
https://github.com/matplotlib/matplotlib/issues/9541
Here seems to be more relevant..
### Bug report
**Bug summary**
Basemap can't plot rotated-pole maps that cross rotated-grid's 0-th meridian
**Code for reproduction**
Here is a simple code that produce two maps for non-rotated grid (zero-rotation).
One does not cross Greenwich meridian another one does.
```python
# Paste your code here
#
#
#!/usr/bin/python
import matplotlib as mpl
mpl.use('AGG')
import matplotlib.pyplot as plt
import numpy as np
from mpl_toolkits.basemap import Basemap
import os
figname="okay.png"
fig = plt.figure()
bmap = Basemap(projection='rotpole',
llcrnrx=0, urcrnry=15,
urcrnrx=25, llcrnry=-15,
lon_0 = 0,
o_lon_p = 0.,
o_lat_p = 90.,
resolution='c')
bmap.drawmapboundary(fill_color='aqua')
bmap.fillcontinents(color='coral',lake_color='aqua')
bmap.drawcoastlines(linewidth=0.5)
bmap.drawparallels(np.arange(-20,20,10.))
bmap.drawmeridians(np.arange(-40,40,10.))
mpl.pyplot.savefig(figname)
figname="broken.png"
fig.clf()
bmap = Basemap(projection='rotpole',
llcrnrx=-25, urcrnry=15,
urcrnrx=25, llcrnry=-15,
lon_0 = 0,
o_lon_p = 0.,
o_lat_p = 90.,
resolution='c')
bmap.drawmapboundary(fill_color='aqua')
bmap.fillcontinents(color='coral',lake_color='aqua')
bmap.drawcoastlines(linewidth=0.5)
bmap.drawparallels(np.arange(-20,20,10.))
bmap.drawmeridians(np.arange(-40,40,10.))
mpl.pyplot.savefig(figname)
```
**Actual outcome**
Here are two maps.. The second one is obviously broken.


**Matplotlib version**
* Operating system: Python 2.7.1, python-matplotlib 1.5.1-1ubuntu1
* Matplotlib version: 1.5.1-1ubuntu1
* Python version: 2.7.1
Default Ubuntu 16.04.3 LTS installation
Hướng dẫn đóng góp
Chưa lập chỉ mục được hướng dẫn đóng góp cho kho mã nguồn này
Bắt đầu từ đâu
- Đọc hết issue, rồi đọc hướng dẫn đóng góp của dự án.
- Bình luận trên issue rằng bạn sẽ nhận — tránh hai người làm cùng một việc.
- Fork repository và làm thay đổi trên một nhánh.
- Mở pull request có tham chiếu số hiệu của issue.
Hướng nghiên cứu
Bắt đầu bằng cách chạy script tái hiện được cung cấp và so sánh hai bản đồ được tạo ra. Theo dõi cách Basemap xử lý phép chiếu rotpole đối với các ranh giới cắt qua kinh tuyến gốc của lưới xoay; công việc được hoàn tất khi cả hai trường hợp đều hiển thị chính xác ranh giới bản đồ, đường bờ biển, các lục địa, vĩ tuyến và kinh tuyến.
Do mô hình lập chỉ mục viết ra từ nội dung của issue.
Đánh giá
- Công nghệ
- python
- Lĩnh vực
- data-visualization
- Loại issue
- Lỗi
- Độ khó
- 3/5
- Thời gian dự kiến
- 1-2 ngày
- Mức độ hoạt động
- Đình trệ
- Độ rõ ràng
- Khá rõ ràng
- Mức phù hợp với người mới
- 42/100