- c - 在位数组中找到第一个零
- linux - Unix 显示有关匹配两种模式之一的文件的信息
- 正则表达式替换多个文件
- linux - 隐藏来自 xtrace 的命令
我已经使用 matplotlib 成功地绘制了一组日期序列数据(X 轴是日期)。但是,我希望能够在绘制的图表上手动从一个 (date1, y1) 到另一个 (date2, y2) 画线。
我似乎找不到任何示例来说明如何执行此操作 - 或者甚至找不到它是否可行。
总而言之,这就是我想要做的:
有人可以发布一个框架片段(最好带有指向更多信息的链接),以展示我如何开始实现它(主要要求是能够在图形上手动绘制线条,然后保存/加载线条成一个情节)。
Để ý:“手动”是指能够通过单击一个点然后单击绘制图形中的另一个点来绘制线条。在两点之间画一条线(或简单地单击一个点并在绘制的图形上的另一个点拖动和释放鼠标)
[[更新]]
dawe,非常感谢您提供的片段。这允许我做我想做的事 - 然而,一旦在 Canvas 上绘制线条(在第二次鼠标单击后),GUI 崩溃并且我在控制台上收到此警告消息:
/usr/local/lib/python2.6/dist-packages/matplotlib/backend_bases.py:2192: DeprecationWarning: Using default event loop until function specific to this GUI is implemented
warnings.warn(str,DeprecationWarning)
您知道导致此警告和程序突然终止的原因吗?
另外,是否可以在图表上绘制多条线? (我猜这将涉及编写某种事件处理程序来实例化一个 linedrawer 变量)。目前,我有机会在“应用程序”突然终止之前只画一条线。
câu trả lời hay nhất
我会这样写:
nhập matplotlib.pyplot dưới dạng plt
class LineDrawer(object):
lines = []
def draw_line(self):
ax = plt.gca()
xy = plt.ginput(2)
x = [p[0] for p in xy]
y = [p[1] for p in xy]
line = plt.plot(x,y)
ax.figure.canvas.draw()
self.lines.append(line)
sử dụng ginput()
可以避免更复杂的事件处理。它“工作”的方式是你绘制一些东西:
plt.plot([1,2,3,4,5])
ld = LineDrawer()
ld.draw_line() # here you click on the plot
要将行数据保存/加载到文件中,您可以使用 dưa chua
hoặc shelve
轻松实现一个方法。您还可以通过 draw_line()
关于python - matplotlib 交互式绘图(在图表上手动绘制线条),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9136938/
Tôi đang cố gắng viết một hàm để tạo một âm mưu và tự động lưu nó vào một tệp. Tôi đang gặp khó khăn với thủ thuật thực hiện [plotname=varname & filename=varname &] một cách linh hoạt và làm cho nó tương thích với việc gọi nó từ một vòng lặp. #
Ai đó có thể vui lòng giúp tôi cách thêm menu "thả xuống" vào biểu đồ thanh vẽ không. Tôi đã tìm thấy một số thông tin trên liên kết sau (https://plot.ly/python/v3/dropdowns/) nhưng tôi đang cố gắng điều chỉnh mã để các tùy chọn thả xuống
Tôi không biết chính xác cách diễn đạt điều này, nhưng về cơ bản tôi muốn nhóm dữ liệu thành một chuỗi cho biểu đồ Excel dựa trên các giá trị cột đứng trước dữ liệu khác. Ví dụ: kích thước trọng lượng táo 3 35 cam 4
Tôi đang tạo biểu đồ cho một ấn phẩm và muốn chúng có cùng cỡ chữ. Khi tôi tạo một hình có nhiều ô, kích thước phông chữ sẽ giảm ngay cả khi tôi không thay đổi các tham số độ phân giải tiff() hoặc kích thước điểm. Tôi đã tăng đồ họa dựa trên số lượng khối cuối cùng sẽ phù hợp
Tôi sử dụng glm::perspective(80.0f, 4.0f/3.0f, 1.0f, 120.0f); và nhân với glm::mat4 view = glm::lookAt( glm::vec3(
Tôi có một cốt truyện trong Shiny UI. Nếu tôi thay đổi bất kỳ tham số đầu vào nào và thông qua phản ứng, biểu đồ sẽ thay đổi. Nhưng chúng ta hãy xem xét tình huống sau: - Vẽ đồ thị trong Shiny UI có thể cho biết biến động giá trong ngày của một cổ phiếu. Để làm điều này, bạn truy vấn một số dữ liệu thời gian thực
Tôi hơi mới với R. Tôi đã theo dõi và triển khai các kết quả trong hai chủ đề sau: http://tolstoy.newcastle.edu.au/R/e17/help/12/03/7984.html http://lukem
Tôi muốn sử dụng bản vẽ GDI+ trong điều khiển WPF. Câu trả lời hay nhất Có nhiều cách để thực hiện việc này, đơn giản nhất là khóa bitmap bạn đang thao tác bằng GDI, lấy bộ đệm pixel (Scan0 trong BitmapData thu được từ khóa
Làm cách nào tôi có thể ẩn thanh màu trong ví dụ cốt truyện sau được lấy từ trang web của họ? df % bố cục(title = 'GDP toàn cầu năm 2014 Nguồn: CIA World Factbook',
Tôi có hai cột dữ liệu X và Y và mỗi mục có 4 chữ số dữ liệu sau dấu thập phân trong cả hai vectơ. Khi tôi vẽ một biểu đồ đơn giản bằng cách sử dụng biểu đồ (x, y), dữ liệu hiển thị trên các trục chính xác đến hai chữ số thập phân. Làm cách nào tôi có thể thay đổi độ chính xác thành 4 chữ số thập phân trên cả hai trục?
Tôi hiện đang làm việc trên Ứng dụng vẽ JavaFX bằng Canvas. Với sự trợ giúp của GraphicsContext, tôi vẽ đường thẳng bằng các phương thức BeginPath() và lineTo()
Nếu câu hỏi này đã được trả lời nhưng tôi không thể tìm thấy thứ mình cần, tôi xin lỗi trước. Tôi muốn vẽ đồ thị một số kết quả từ các tệp có tên data1.dat, data2.dat... Tôi đã quản lý để nhập dữ liệu qua vòng lặp nhưng tôi không thể vẽ đồ thị kết quả bằng vòng lặp. chỉ một
Tôi có một tính năng trong khung dữ liệu gấu trúc của mình có thể (có thể) có nhiều cấp độ. Tôi có thể đạt được các cấp độ duy nhất bằng cách sử dụng: Reasons = df["Reason"].unique() Tôi có thể thực hiện việc này trên một biểu đồ bằng cách thực hiện
Tôi gặp sự cố khi vẽ kết quả bằng Python trong Ubuntu 14 và Windows 7 (cả 64-bit). Để so sánh đơn giản, tôi đã làm: from tvb.simulator.lab import *
Đoạn mã sau khá đơn giản - nó lấp đầy bề mặt thiết kế bằng các pixel được chọn ngẫu nhiên - không có gì lạ mắt (bây giờ hãy bỏ qua XXXXXXX trong phương pháp thứ hai). khoảng trống riêng tư PaintBackground() { Rando
Tôi đang cố gắng tạo một ứng dụng xoay để vẽ đồ thị một hàm (bây giờ rất đơn giản, giả sử x+2) nhưng tôi gặp khó khăn khi tạo tọa độ toán học cho các điểm của mình dựa trên tọa độ màn hình. Tôi muốn nó chỉ cần vẽ một đường trong biểu đồ của tôi từ P1(0,1) đến P2(1,2
EDIT 4: Nền định dạng mới cho câu hỏi: Tôi có Cửa sổ lớp mở rộng JFrame và bên trong JFrame tôi có Canvas. Tôi thêm đối tượng tùy chỉnh vào Canvas. Mục đích duy nhất của đối tượng này (vì mục đích tranh luận) là ở Ca
Tôi cần đánh dấu bậc thang cho giải đấu sắp tới, nhưng tôi không thể tìm ra cách nào để đánh dấu nó về mặt ngữ nghĩa. Cách duy nhất tôi thấy cho đến nay là đánh dấu nó dưới dạng một cái bàn, điều mà tôi muốn tránh bằng mọi giá. Có ý tưởng gì không? câu trả lời hay nhất
Tôi hiện đang viết giao diện người dùng cho một dự án uC nhỏ. Tôi gặp một số vấn đề khi tính toán vị trí của đường thẳng đứng. Ý tưởng là di chuyển đường màu đỏ dọc theo trục x đến cuối hình chữ nhật. Giá trị tăng lên bằng cách sử dụng bộ mã hóa xoay vô hạn, nằm trong khoảng từ 0 đến 800 với gia số là 1. Cạnh trái của hình chữ nhật là
Tôi đang cố vẽ sơ đồ phân bố ánh sáng. Tôi muốn thực hiện chính xác những gì bước đầu tiên của câu hỏi này yêu cầu: Phân tích thống kê trên đường cong hình Chuông (Gaussian). Bây giờ tôi có một tập hợp các giá trị. Tôi muốn phần tử mảng
Tôi là một lập trình viên xuất sắc, rất giỏi!