Commit Graph

70 Commits

Author SHA1 Message Date
Arthur Camouseigt
41da4f2bd5 [matplotlib/modpyplot] Adding keyword argument support for arrow function
Arrow function can now take into account the following keywords arguements :
- head_width
- color

Change-Id: I205dcd5776d53a4efcbf1e6da4edf29d8e399cab
2020-06-04 14:50:09 +02:00
Arthur Camouseigt
985c31920d [matplotlib/plot_store.cpp] Removed useless function
checkFloatType function used to check for an obj type before cast. This is already done by mp_obj_get_float

Change-Id: I745bb3066328678ab0b2a2149c8f38a84f26fbd2
2020-06-04 14:50:09 +02:00
Arthur Camouseigt
68ff71f72a [matplotlib/modpyplot.cpp] Modified the way to add mp_float
To prevent crashes caused by failed casts from char to float, removed optimization.

Change-Id: Ia91aafa007538b6c05f7aace5e5962989d313c98
2020-06-04 14:50:09 +02:00
Arthur
7cd0b7e0e0 [matplotlib] Removed useless initializers in PlotStore constructor
Change-Id: Idea0ce07cbc800139539f9d3fb27811920645184
2020-06-04 14:50:09 +02:00
Arthur
13d0bcf676 [matplotlib] Modified isEmpty method for showing axis
Added a condition for being considered empty.
Allows axis("on") or axis((0,1,2,3)) to display something with show()
This behavior is the same as the python module

Change-Id: If5f3b07c280ee9ead2bc23d23cbbb4f01da7eae5
2020-06-04 14:50:09 +02:00
Émilie Feral
0c9fb57b33 [python] matplotlib: check float type of the head_width arg of arrow function 2020-06-04 14:50:09 +02:00
Émilie Feral
9b7c47a7f0 [python] matplotlib: arrow can have up to 6 args 2020-06-04 14:50:09 +02:00
Émilie Feral
083f959b7b [python] matplotlib: Enable to change the arrow shape via the head_width
arg
2020-06-04 14:50:09 +02:00
Émilie Feral
0f8f82b94b [python] matplotlib: Add a parameter to to arrow to set the arrow width 2020-06-04 14:50:09 +02:00
Émilie Feral
e2c06cbb44 [python] matplotlib: add color argument to plot, scatter, hist, bar and
arrow
2020-06-04 14:50:08 +02:00
Émilie Feral
a22990943b [python] matplotlib: missing static keyword 2020-06-04 14:50:08 +02:00
Romain Goyet
644c44e069 Misc cleanups 2020-04-14 09:31:02 -04:00
Romain Goyet
950862f8d0 Use std::min and std::max 2020-04-14 09:31:02 -04:00
Romain Goyet
56f4b275a5 [python] Turn a warning into a error when appropriate 2020-04-14 01:17:25 -07:00
Émilie Feral
154625a945 [python] Fix warning: comparisons between signed and unsigned integers 2020-04-07 09:51:39 +02:00
Émilie Feral
c58456a058 [python] matplotlib: add comment WIP 2020-04-06 12:30:52 +02:00
Émilie Feral
b7392dbd95 [python] matplotlib: clean implementation (by using
mp_obj_float_binary_op)
2020-04-06 12:30:52 +02:00
Émilie Feral
190802aa23 [python] Remove unused duplicate file 2020-04-06 12:30:52 +02:00
Émilie Feral
244b97e89b [python] matplotlib: handle case plot([],[]) 2020-04-01 10:18:09 +02:00
Émilie Feral
e5660635d6 [python] matplotlib: handle case hist([]) 2020-04-01 10:18:09 +02:00
Émilie Feral
3987167419 [python] matplotlib: add comment 2020-04-01 10:18:09 +02:00
Émilie Feral
28224bd75e [python] matplotlib: fix hist implementation
This fixes the following crash: input 'hist([1,2,100],[1,2]) on a Python
console with matplotlib.pyplot imported
2020-04-01 10:18:09 +02:00
Émilie Feral
bc1eae17d7 [python] matplotlib: change text() relative position to be similar to
python3
2020-04-01 10:18:09 +02:00
Émilie Feral
7c612f35a8 [python] matplotlib: change Store::Rectangle structure to (left, right,
top, bottom) and avoid rounding error when converting flaot rect to
pixel
2020-04-01 10:18:09 +02:00
Émilie Feral
d468f5e130 [python] WIP matplotlib: avoid empty pixel line between bars and axis
line
2020-04-01 10:18:09 +02:00
Émilie Feral
84bc46ca8c [python] matplotlib: PlotView: improve rect drawing (use round instead
of truncating pixelFloat
2020-04-01 10:18:09 +02:00
Émilie Feral
b3b6565410 [python] modpyplot: show() does nothing when the store is empty 2020-04-01 10:18:09 +02:00
Émilie Feral
ce33faad11 [python] matplotlib: PlotView: rectangle are always visible despite the
pixel width
2020-04-01 10:18:09 +02:00
Émilie Feral
51eabf08e1 [python] matplotlib: fix PlotStore::initRange for an only dot 2020-04-01 10:18:09 +02:00
Émilie Feral
2c82460470 [python] matplotlib: add a comment to PlotView 2020-04-01 10:18:09 +02:00
Émilie Feral
b290bed409 [python] matplotlib: fix typo in ErrorValue 2020-04-01 10:18:09 +02:00
Émilie Feral
574eacb69c [python] matplotlib: flush heap memory when any error is raised 2020-04-01 10:18:09 +02:00
Émilie Feral
61e7ec52e6 [python] matplotlib: make pyplot a submodule of matplotlib 2020-04-01 10:18:09 +02:00
Émilie Feral
7d5568ff1a [python] WIP: change change pyplot name: pyplot --> matplotlib.pyplot 2020-04-01 10:18:09 +02:00
Émilie Feral
1c4f43c665 [python] matplotlib: handle empty range histogram 2020-04-01 10:18:09 +02:00
Émilie Feral
1c714a6ee6 [python] matplotlib: PlotStore checks for type before accepting a new object
This fixes the crash: when a non-float value is added through the
tupple, the next float extraction will fail
2020-04-01 10:18:09 +02:00
Émilie Feral
6d10e9fdc2 [python] matplotlib: improve and fix arguments checking 2020-04-01 10:18:09 +02:00
Émilie Feral
bf7c3b1aab [python] matplotlib: implement "plot(y)' 2020-04-01 10:18:09 +02:00
Émilie Feral
dc58b9692f [python] matplotlib: imporve 'hist' 2020-04-01 10:18:09 +02:00
Émilie Feral
1895b83251 [python] Remove useless code 2020-04-01 10:18:09 +02:00
Émilie Feral
f97f56c021 [python] matplotlib: improve 'bar' arguments acceptation 2020-04-01 10:18:09 +02:00
Émilie Feral
18d59d923a [python] matplotlib: fix automatic range initialization 2020-04-01 10:18:09 +02:00
Émilie Feral
9a240bb0b4 [python] matplotlib: improve 'grid' 2020-04-01 10:18:09 +02:00
Émilie Feral
1b768ba34a [python] modpyplot: improve 'axis' arguments acceptance 2020-04-01 10:18:09 +02:00
Émilie Feral
81170610eb [python] Matplotlib: init store range depending on 'auto' parameter 2020-04-01 10:18:09 +02:00
Émilie Feral
8aa1930f80 [python] Matplotlib: handle 'auto' range computation 2020-04-01 10:18:09 +02:00
Émilie Feral
fb3f6ab6f3 [apps/code][python] ConsoleController doesn't keep any pointer/boolean to know
if the sandbox/matplotlib view controller is displayed. Its state won't be
always right; instead, use the StackViewController depth.

This fixes the following bug: when popping the sandbox/matplotlib view
controller, the first responder token was not given to the console
controller!
2020-04-01 10:18:09 +02:00
Émilie Feral
15e5f7a285 [python] Matplotlib: reload labels in PlotController::viewWillAppear 2020-04-01 10:18:09 +02:00
Émilie Feral
7e73afc654 [python] Matplotlib: flush the plot store when the controller is popped 2020-04-01 10:18:09 +02:00
Émilie Feral
24cd5079d4 [python] matplotlib: fix modpyplot_gc_collect 2020-04-01 10:18:08 +02:00