Nó khá dễ dàng để làm cho một âm mưu gốc 3d với lệnh stem3 như được ghi trong http://www.mathworks.com/help/techdoc/ref/stem3.html Tôi tự hỏi nếu có một lệnh tương tự trong matplotlib? Tôi đã kiểm tra tài liệu trực tuyến cho phiên bản mới nhất, nhưng không thể tìm thấy. Bất cứ ai có thể đưa ra một số gợi ý?Có matplotlib đối tác của Matlab "stem3"?
8
A
Trả lời
11
Tôi không biết bất kỳ tương đương trực tiếp nào của stem3
trong matplotlib. Tuy nhiên, nó không phải là khó khăn để vẽ nhân vật như vậy (ít nhất là trong hình thức cơ bản của nó) sử dụng Line3D s:
import matplotlib.pyplot as plt
import mpl_toolkits.mplot3d.art3d as art3d
import numpy as np
fig = plt.figure()
ax = fig.add_subplot(1, 1, 1, projection='3d')
N = 100
theta = np.linspace(0, 2*np.pi, N, endpoint=False)
x = np.cos(theta)
y = np.sin(theta)
z = range(N)
for xi, yi, zi in zip(x, y, z):
line=art3d.Line3D(*zip((xi, yi, 0), (xi, yi, zi)), marker='o', markevery=(1, 1))
ax.add_line(line)
ax.set_xlim3d(-1, 1)
ax.set_ylim3d(-1, 1)
ax.set_zlim3d(0, N)
plt.show()
3
Như của unutbu, chỉ với một cốt truyện thông thường:
In [20]: from mpl_toolkits.mplot3d import Axes3D
In [21]: fig = figure()
In [22]: ax = fig.add_subplot(111, projection='3d')
In [23]: x = [2,4,1,3]
In [24]: y = [3,5,6,7]
In [25]: z = [4,5,6,7]
In [26]: for xx,yy,zz in zip(x,y,z): plot([xx,xx],[yy,yy],[0,zz], '-')
Các vấn đề liên quan
- 1. Tương đương với hình ảnh của MATLAB trong matplotlib?
- 2. MATLAB hoàn tác một lệnh
- 3. matplotlib - tương tác chọn điểm hoặc địa điểm?
- 4. Tương tác giữa networkx và matplotlib
- 5. Chế độ tương tác trong matplotlib
- 6. Làm thế nào để hợp tác với Matlab?
- 7. MATLAB: đối phó với java.lang.String
- 8. Matplotlib: cốt truyện tương tác trên máy chủ web
- 9. thao tác dòng thông tin để ấp trong matplotlib
- 10. Làm thế nào để cập nhật cửa sổ imshow() của matplotlib tương tác?
- 11. Đồ thị tương tác Matplotlib được nhúng trong PyQt
- 12. Lựa chọn tương tác của chuỗi trong một âm mưu matplotlib
- 13. Có tương đương Python của hàm conv2 của MATLAB không?
- 14. Colorplot của mảng 2D matplotlib
- 15. Đối số mặc định trong Matlab
- 16. matplotlib: là màu nền thay đổi có thể?
- 17. Đối tác chưa ký của ptrdiff_t là gì?
- 18. đối tác của gl_TexCoord trong OpenGL ES 2.0
- 19. Đối tác với preg_match của PHP bằng Python
- 20. Thao tác thứ tự của đối số để gõ constructors
- 21. matplotlib cho người dùng R?
- 22. Chuỗi thao tác đối tượng
- 23. JSON đối tượng thao tác
- 24. Trường vector 3D trong matplotlib
- 25. "permute" của MATLAB trong python
- 26. matplotlib: Lấy mảng bản đồ màu
- 27. Làm thế nào để có được các thuộc tính của đối tượng được chọn trong mplot3d (matplotlib + python)?
- 28. Làm thế nào tôi có thể thay đổi kích thước phông chữ của các đối tượng trục trong matplotlib
- 29. Phát hiện vị trí chuột tương đối trên vải matplotlib
- 30. thanh matplotlib với thanh lỗi không đối xứng
+1. Điều này trông đẹp hơn ví dụ trên trang của Matlab. Có thể có những quả bóng nhỏ trên đầu dòng không? – EOL
Cảm ơn bạn đã cung cấp động lực để theo đuổi điều này. Lúc đầu, tôi nghĩ rằng tôi phải che phủ một âm mưu phân tán, nhưng nó xuất hiện thiết lập một [điểm đánh dấu] (http://matplotlib.sourceforge.net/api/artist_api.html#matplotlib.lines.Line2D.set_marker) và sử dụng [ set_markevery (2)] (http://matplotlib.sourceforge.net/api/artist_api.html#matplotlib.lines.Line2D.set_markevery) cũng có thể thực hiện. – unutbu
Câu trả lời hay. +1 – ptomato