Tôi đang sử dụng phiên bản Boong 0.12.15, phiên bản này tạo ra biểu đồ hexbin tuyệt vời. Tôi muốn biết làm thế nào để dễ dàng tìm thấy chỉ mục của từng giá trị hình lục giác?
Ví dụ: đoạn mã sau ( https://docs.bokeh.org/en/latest/docs/gallery/hexbin.html ):
nhập numpy dưới dạng np
từ tệp đầu ra nhập khẩu của Bo mạch.io, hiển thị
từ Boong.models nhập HoverTool
từ hình ảnh nhập khẩu của Bo mạch.plotting
n=500
x = 2 + 2*np.random.standard_normal(n)
y = 2 + 2*np.random.standard_normal(n)
p = figure(title="Hexbin cho 500 điểm", match_aspect=True,
tools="wheel_zoom,đặt lại", nền_fill_color='#440154')
p.grid.visible = Sai
r, bins = p.hexbin(x, y, size=0,5, hover_color="hồng", hover_alpha=0,8)
p.circle(x, y, color="white", size=1)
di chuột = HoverTool(tooltips=[("count", "@c"), ("(q,r)", "(@q, @r)")],
mode="mouse", point_policy="follow_mouse", renderers=[r])
p.add_tools(di chuột)
Output_file("hexbin.html")
hiển thị(p)
Tôi muốn tìm cho mỗi hexbin chỉ mục của bộ dữ liệu (x, y) mà nó chứa
Cảm ơn
EDIT: Được rồi, tôi vừa nhận ra (tôi nghĩ) bạn đang hỏi một câu hỏi khác. Để tìm ra chỉ mục của điểm ban đầu trong mỗi khối biểu đồ, về cơ bản bạn phải tạo lại thùng lục giác
Nó làm gì:
Trong [8]: từ Bo mạch.util.hex nhập cartesian_to_axis
Trong [8]: nhập gấu trúc dưới dạng pd
Trong [9]: q, r = cartesian_to_axis(x, y, 0.5, "pointytop")
Trong [10]: df = pd.DataFrame(dict(r=r, q=q))
Trong [11]:groups = df.groupby(['q', 'r'])
Trong [12]: nhóm.groups
Out[12]:
{(-4, -3): Int64Index([272], dtype='int64'),
(-4, 0): Int64Index([115], dtype='int64'),
(-4, 3): Int64Index([358], dtype='int64'),
(-4, 4): Int64Index([480], dtype='int64'),
(-3, -1): Int64Index([323], dtype='int64'),
(-3, 2): Int64Index([19, 229, 297], dtype='int64'),
...
(11, -5): Int64Index([339], dtype='int64'),
(12, -7): Int64Index([211], dtype='int64')}
nhóm
Mỗi khóa của mỗi mục trong từ điển là một khối đồ thị (q, r)
Tọa độ thập lục phân trục, giá trị là số điểm trong ô này của danh sách chỉ mục.
câu trả lời cũ
Thông tin này được trả về trong thùng
Trong DataFrame:
Trong [3]: bins.head()
Out[3]:
số lượng qr
0 -4 -3 1
1 -4 0 1
2 -4 3 1
3 -4 4 1
4 -3 -1 1
Đây làq
Vàr
ĐúngTọa độ lưới lục giác trục .nếu bạn muốn khối biểu đồ hex tập trung vào Descartes x
Và y
tọa độ bạn có thể sử dụng trục_to_cartesian
功能。
Tôi là một lập trình viên xuất sắc, rất giỏi!