标签: matplotlib-basemap

库未加载:@rpath/libpng16.16.dylib

当我打电话时mpl_toolkits.basemap,出现以下错误,任何人都可以帮忙吗?

ImportError: dlopen(/Users/pegah/anaconda3/lib/python3.6/site-packages/matplotlib/ft2font.cpython-36m-darwin.so, 2): Library not loaded: @rpath/libpng16.16.dylib
Referenced from: /Users/pegah/anaconda3/lib/libfreetype.6.dylib
Reason: Incompatible library version: libfreetype.6.dylib requires version 51.0.0 or later, but libpng16.16.dylib provides version 49.0.0
Run Code Online (Sandbox Code Playgroud)

python matplotlib-basemap

4
推荐指数
1
解决办法
4033
查看次数

如何在不均匀的色带处将 0 设置为白色

我的色带不均匀,我希望 0 为白色。所有负色必须是蓝色的,所有正色必须是红色的。我当前尝试显示 0 偏蓝色和 0.7 白色。

有没有办法将0设置为白色?

import numpy as np
import matplotlib.colors as colors 
from matplotlib import pyplot as m

bounds_min = np.arange(-2, 0, 0.1)
bounds_max = np.arange(0, 4.1, 0.1)
bounds = np.concatenate((bounds_min, bounds_max), axis=None)       
norm = colors.BoundaryNorm(boundaries=bounds, ncolors=256)      # I found this on the internet and thought this would solve my problem. But it doesn't...
m.pcolormesh(xx, yy, interpolated_grid_values, norm=norm, cmap='RdBu_r')
Run Code Online (Sandbox Code Playgroud)

python colors matplotlib colorbar matplotlib-basemap

4
推荐指数
1
解决办法
1万
查看次数

Plot_confusioin_matrix 图不显示整数值,而是显示一些指数值

混淆矩阵

from sklearn.metrics import confusion_matrix
from sklearn.metrics import plot_confusion_matrix

print('*** Test Accuracy ***',forest.score(X_test,y_test))
disp = plot_confusion_matrix(forest, X_test, y_test,
                                 display_labels=[0,1],
                                 cmap=plt.cm.Blues,
                             values_format='g'
                            )
Run Code Online (Sandbox Code Playgroud)

可以看出,在混淆矩阵图中,打印的数字不是整数。需要的是要绘制的整数值。

matplotlib python-3.x confusion-matrix matplotlib-basemap seaborn

4
推荐指数
1
解决办法
1213
查看次数

Maplotlib 和底图:无法导入名称“dedent”

我正在尝试在底图叠加层上绘制网络。我有包裹:

  • 底图=1.3.0=py36ha7665c8_0
  • matplotlib=3.3.1=0
  • matplotlib-base=3.3.1=py36hba9282a_0
  • 网络x=2.5=py_0

当我只运行线路时
from mpl_toolkits.basemap import Basemap

我得到
from matplotlib.cbook import dedent
ImportError: cannot import name 'dedent'

我已经尝试了几个不同版本的软件包,但无法找到正确的功能组合。
任何人对 matpltlib 和底图的组合有任何想法吗?或者另一种在底图上绘制我的网络的方法?

matplotlib matplotlib-basemap

4
推荐指数
2
解决办法
7895
查看次数

Python Basemap drawgreatcircle函数

嗨,我正在尝试使用Basemap(matplot lib的一部分)中的greatcircle函数将ip地址图绘制到世界地图上,但每次我连接跨越太平洋的两个点(即美国西海岸的某个地方,澳大利亚)我的情节中出现了一条水平线.

我知道这是因为这个问题:

Note Cannot handle situations in which the great circle intersects the edge of the map projection domain, and then re-enters the domain. (http://matplotlib.org/basemap/api/basemap_api.html#mpl_toolkits.basemap.Basemap.drawgreatcircle)
Run Code Online (Sandbox Code Playgroud)

只是想知道是否有人知道如何解决它或知道另一个包没有"有这个问题.谢谢!

python map matplotlib-basemap

3
推荐指数
1
解决办法
3067
查看次数

Python实时变化热图绘图

我有一个2D网格50 * 50。对于每个位置,我都有一个强度值(即,数据类似于(x,y,intensity)那50 * 50个位置中的每个位置)。我想将数据可视化为热图。

扭曲之处在于(对于大多数位置而言)强度每秒都会变化,这意味着我需要每秒重新绘制热图。我想知道什么是最好的库/方法来处理这种实时变化热图。

python matplotlib ipython matplotlib-basemap

3
推荐指数
1
解决办法
5972
查看次数

在Basemap中绘制包装路径

我试图绘制一个卫星地面轨道.我有一个度数的纬度和经度列表.经度值均为-180至+180度.我的第一个问题是使用latlon关键字(顺便说一句,我通过PyCall.jl包在Julia中使用它,所以请原谅看起来很奇怪的语法):

map = Basemap.Basemap(projection="mill",lon_0=0)
map[:drawcoastlines]()
map[:drawparallels](-90:30:90,labels=[1,0,0,0])
map[:drawmeridians](map[:lonmin]:60:map[:lonmax]+30,labels=[0,0,0,1])
map[:plot](lon,lat,color="red",latlon=true)
Run Code Online (Sandbox Code Playgroud)

奇怪的情节

这是......不应该是什么样子.我不确定问题是什么.但是,如果我先转换为地图坐标:

xx,yy = map(lon,lat) 
map[:plot](xx,yy,color="red")
Run Code Online (Sandbox Code Playgroud)

更好的情节

这要好得多,除了经度从+180到-180之间的线.有什么建议使这看起来更好?

可以在此处找到用于生成这些图的纬度,经度对(以度为单位).

python maps plot matplotlib-basemap

3
推荐指数
1
解决办法
1663
查看次数

如何在python底图图例中显示shapefile标签?

python底图中有两个内容:多线shapefile(IL_State_ln)和底图范围内一些随机点的散点图.我的兴趣在于生成一个图例,该图例提供有关shapefile和散点的信息.目前,我只能在图例中包含点而不是shapefile.

检查Basemap API文档不提供任何信息,因为函数readshapefile()似乎没有任何label参数.

你能帮我在图例中包含shapefile指标,就像在ArcGIS地图中一样吗?

这是我的代码:

import numpy as np    
from matplotlib import pyplot as plt
from mpl_toolkits.basemap import Basemap

fname = "DATA/GIS/IL_State_ln"

m = Basemap(llcrnrlon=-92.,llcrnrlat=36.8,urcrnrlon=-86.5,urcrnrlat=43.,
             resolution='i', projection='tmerc', lat_0 = 36.5, lon_0 = -91.8)

m.readshapefile(fname, 'mygeom')

x,y = m([-90., -91.2, -88.], [38., 37.7, 42.])
m.scatter(x,y, marker='o', label="Points")

plt.legend(loc=3)
plt.show()
Run Code Online (Sandbox Code Playgroud)

我使用的是Python 3.5,matplotlib 2.0和底图1.0.8.

python gis matplotlib matplotlib-basemap

3
推荐指数
1
解决办法
1750
查看次数

底图在纬度经度之间绘制线条

我正在绘制龙卷风的起点/终点位置.csv文件具有以下数据:

TouchDownLat TouchDownLong LiftoffLat LiftoffLong
31.53         -97.15       31.74      -96.88
46.45         -100.67      46.67      -100.47
43.1          -83.85       43.17      -83.42
Run Code Online (Sandbox Code Playgroud)

等等...

我所做的是每个纬度和经度,并将其分成一个numpy数组,如下:

import matplotlib.pyplot as plt
import csv
import numpy as np
from mpl_toolkits.basemap import Basemap
with open(fname, 'rb') as f:
    w = csv.reader(f, delimiter = ',')
    for i, line in enumerate (w):
      if i == 0 or line[2][0:4] not in str(range(2007,2018)):
          pass
      else:
          lat_td.append(line[27])
          long_td.append(line[28])
          lat_lift.append(line[29])
          long_lift.append(line[30])

touchdown = np.array([[lat_td], [long_td]])
lift = np.array([[lat_lift], [long_lift]])
Run Code Online (Sandbox Code Playgroud)

对于底图,我找到了所有纬度/经度的最大值/最小值,这样它就可以制作一张地图来切断没有龙卷风的状态(例如:我不希望看到加利福尼亚州看到EF -5龙卷风地点)

m = Basemap(projection = 'merc', …
Run Code Online (Sandbox Code Playgroud)

python arrays numpy list matplotlib-basemap

3
推荐指数
1
解决办法
4404
查看次数

在美国的底图图中为多边形添加颜色条

非常感谢为以下代码绘制颜色条的任何帮助。我希望我的身材像这样

我正在使用形状文件以及下面提到的文件根据字典对象中可用的密度绘制颜色图。

            {'ALABAMA': 37,
             'ALASKA': 1,
             'ARIZONA': 161,
             'ARKANSAS': 35,
             'CALIFORNIA': 1854,
             'COLORADO': 104,
             'CONNECTICUT': 170,
             'DELAWARE': 53,
             'DISTRICT OF COLUMBIA': 83,
             'FLORIDA': 364,
             'GEORGIA': 350,
             'HAWAII': 15,
             'IDAHO': 16,
             'ILLINOIS': 553,
             'INDIANA': 109,
             'IOWA': 60,
             'KANSAS': 47,
             'KENTUCKY': 50,
             'LOUISIANA': 48,
             'MAINE': 17,
             'MARYLAND': 187,
             'MASSACHUSETTS': 351,
             'MICHIGAN': 260,
             'MINNESOTA': 170,
             'MISSISSIPPI': 16,
             'MISSOURI': 119,
             'NA': 11,
             'NEBRASKA': 28,
             'NEVADA': 21,
             'NEW HAMPSHIRE': 32,
             'NEW JERSEY': 676,
             'NEW MEXICO': 20,
             'NEW YORK': 993,
             'NORTH CAROLINA': 266,
             'NORTH DAKOTA': …
Run Code Online (Sandbox Code Playgroud)

python matplotlib matplotlib-basemap python-3.6

3
推荐指数
1
解决办法
870
查看次数