mirror of
https://github.com/UpsilonNumworks/Upsilon.git
synced 2026-01-19 16:57:31 +01:00
[python] Add an "axis" function to the matplotlib module
This commit is contained in:
committed by
Émilie Feral
parent
c99bed6922
commit
6a796f5f7c
@@ -1 +1,69 @@
|
||||
#include "plot_store.h"
|
||||
|
||||
namespace Matplotlib {
|
||||
|
||||
PlotStore::PlotStore() : Shared::InteractiveCurveViewRange(),
|
||||
m_grid(false)
|
||||
{
|
||||
flush();
|
||||
}
|
||||
|
||||
void PlotStore::flush() {
|
||||
m_dots = mp_obj_new_list(0, nullptr);
|
||||
}
|
||||
|
||||
void PlotStore::addDots(mp_obj_t x, mp_obj_t y) {
|
||||
mp_obj_t items[2] = {x, y};
|
||||
mp_obj_t tuple = mp_obj_new_tuple(2, items);
|
||||
mp_obj_list_append(m_dots, tuple);
|
||||
|
||||
//mp_obj_tuple_t * t = static_cast<mp_obj_tuple_t *>(MP_OBJ_TO_PTR(mp_obj_new_tuple(3, NULL)));
|
||||
//t->items[0] = MP_OBJ_NEW_SMALL_INT(r);
|
||||
}
|
||||
|
||||
PlotStore::Dot PlotStore::dotAtIndex(int i) {
|
||||
size_t numberOfTuples;
|
||||
mp_obj_t * tuples;
|
||||
mp_obj_list_get(m_dots, &numberOfTuples, &tuples);
|
||||
|
||||
mp_obj_t firstTuple = tuples[0];
|
||||
size_t numberOfObjects;
|
||||
mp_obj_t * objects;
|
||||
mp_obj_tuple_get(firstTuple, &numberOfObjects, &objects);
|
||||
|
||||
mp_obj_t x = objects[0];
|
||||
mp_obj_t y = objects[1];
|
||||
|
||||
size_t numberOfX;
|
||||
mp_obj_t * xValues;
|
||||
mp_obj_list_get(x, &numberOfX, &xValues);
|
||||
size_t numberOfY;
|
||||
mp_obj_t * yValues;
|
||||
mp_obj_list_get(y, &numberOfY, &yValues);
|
||||
|
||||
float goodX = mp_obj_get_float(xValues[i]);
|
||||
float goodY = mp_obj_get_float(yValues[i]);
|
||||
|
||||
return PlotStore::Dot(goodX, goodY, KDColorRed);
|
||||
}
|
||||
|
||||
int PlotStore::numberOfDots() {
|
||||
size_t numberOfTuples;
|
||||
mp_obj_t * tuples;
|
||||
mp_obj_list_get(m_dots, &numberOfTuples, &tuples);
|
||||
|
||||
mp_obj_t firstTuple = tuples[0];
|
||||
size_t numberOfObjects;
|
||||
mp_obj_t * objects;
|
||||
mp_obj_tuple_get(firstTuple, &numberOfObjects, &objects);
|
||||
|
||||
mp_obj_t x = objects[0];
|
||||
|
||||
size_t numberOfX;
|
||||
mp_obj_t * xValues;
|
||||
mp_obj_list_get(x, &numberOfX, &xValues);
|
||||
|
||||
return numberOfX;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user