我知道其他地方也有类似的问题,但我真的很难理解答案。我有一个包含5列(城镇名称,纬度,经度,风速,风向)的CSV文件,我可以在地图上绘制正确方向的箭头,我只想根据颜色对箭头进行着色风速列中的数字。
with open('output.csv') as latloncsv:
towns_csv = csv.reader(latloncsv, dialect='excel')
for rows in towns_csv:
x = float(rows[2]) # x co-ordinates
y = float(rows[1]) # y co-ordinates
u = float(rows[3]) # wind speed
v = float(rows[4]) # wind direction
for color in u:
if color <= 2:
letter = ('g')
elif color <=4:
letter = ('y')
elif color <=6:
letter = ('b')
elif color <=8:
letter = ('p')
else:
letter = ('r')
plt.plot(x, y, marker=(3, 0, v), markersize='10', color= ('color'))
UKMap.UKMap.__init__('self')
plt.show()
我可以制作任何单一颜色,但我只是想知道如何改变代码,以便我可以使它的颜色不同。
color= ('color'))
对不起,如果写得太厉害,我还在学习。谢谢你的帮助。
答案 0 :(得分:0)
怎么样?
with open('output.csv') as latloncsv:
towns_csv = csv.reader(latloncsv, dialect='excel')
for rows in towns_csv:
x = float(rows[2]) # x co-ordinates
y = float(rows[1]) # y co-ordinates
u = float(rows[3]) # wind speed
v = float(rows[4]) # wind direction
if u <= 2:
color = 'g'
elif u <=4:
color = 'y'
elif u <=6:
color = 'b'
elif u <=8:
color = 'p'
else:
color = 'r'
plt.plot(x, y, marker=(3, 0, v), markersize='10', color=color)
UKMap.UKMap.__init__('self')
plt.show()
...我对您的数据并不完全确定(因此无法测试),但这应该有效。
另请注意:('b')
中的括号aroud字符串(或任何标识符)绝对没有效果;这与'b'
并且UKMap.UKMap.__init__('self')
行看起来非常可疑!不应该像uk_map = UKMap.UKMap()
(也许是一些参数;但字符串'self'
非常奇怪!)? self
(不是字符串)通常只在类定义中使用,不在类外使用。