Der All, Here in this NoteBook <https://numpypprint-fsfarimani.notebooks.azure.com/j/notebooks/pprint.ipynb> I tried to compare my unicode implementation with Eric's HTML version plus links to the discussions on different forums if you like to follow
For example: [image: chrome_2018-11-07_10-15-20.png] Best regards, Foad On Wed, Nov 7, 2018 at 9:24 AM Foad Sojoodi Farimani <f.s.farim...@gmail.com> wrote: > Dear Eric, > > In between your lines: > > On Wed, Nov 7, 2018 at 7:23 AM Eric Wieser <wieser.eric+nu...@gmail.com> > wrote: > >> Foad: >> >> having the functionality for conventional consols would also help >> >> I think the most important thing in a conventional console is to output >> the array in a format that allows you to reconstruct the object. That makes >> it way easier for people to reproduce each others problems without having >> their full dataset. If your goal is to visualize complex arrays, I think >> the console is a pretty limited tool, and numpy already does as much as is >> worthwhile there. >> > I agree with most of what you say: > > 1. the current representation of numpy array with print() is of course > already there and it is not my goal to replace it. but rather add something > like Sympy's pprint function, an alternative representation. > 2. the reason I'm using console is first because there are people who > use it and secondly because I have no idea how to do what you are doing :)) > there is room for both I think > > I don’t think putting everything in boxes is helping. it is confusing. I >> would rather having horizontal and vertical square brackets represent each >> nested array >> >> See my update at the same link, which shows an alternative which draws >> those brackets as you envi >> > wow this is awesome: > > > [image: 2018-11-07_09-07-37.gif] > > I wonder if you could make this the default view without the need of those > other inputs or the lamda function? this is almost 80% of what I had in mind > > > >> it would be awesome if in IPython/Jupyter hovering over an element a >> popup would show the index >> >> It… already does? >> > it doesn't on my browser :( > >> to show L R U P or combination of these plus some numbers >> >> I don’t know what you mean by this. >> > imaging the Pandas .head() and .tail functions which accept positive > integer inputs to show specific number of rows. now our print function > could have two inputs one string which should be L for left, R for right, > U for up and D for down. respectively UL, UR, DL and DR for corners. > another input is a tuple of integers which in the case of U,D,L,R is only > one integer showing the number of rows or columns. and in the case of UL, > UR, DL, DR two integers showing the number of rows and columns in that > specific corner to be shown. > > What could be added: > > 1. adding slide bars for big datasets > 2. compressing the result according to the terminals dimensions (as > Pandas does) > 3. editing the variables like Spyders variable explorer > 4. adding dimensions or rows/columns within a dimension or elements in > rows/columns > > Again thanks a lot for your help. I appreciate your kind support. > > Best, > Foad > > Eric >> >> On Tue, 6 Nov 2018 at 00:56 Foad Sojoodi Farimani f.s.farim...@gmail.com >> <http://mailto:f.s.farim...@gmail.com> wrote: >> >> Wow, this is awesome. >>> Some points though: >>> >>> - not everybody uses IPython/Jupyter having the functionality for >>> conventional consols would also help. something like >>> Sypy's init_printing/init_session which smartly chooses the right >>> representation considering the terminal. >>> - I don't think putting everything in boxes is helping. it is >>> confusing. I would rather having horizontal and vertical square brackets >>> represent each nested array >>> - it would be awesome if in IPython/Jupyter hovering over an element >>> a popup would show the index >>> - one could read the width and height of the terminal and other >>> options I mentioned in reply Mark to show L R U P or combination of these >>> plus some numbers (similar to Pandas .head .tail) methods and then show >>> the >>> rest by unicod 3dot >>> >>> P.S. I had no idea our university Microsoft services also offers Azure >>> Notebooks awesome :P >>> >>> F. >>> >>> On Tue, Nov 6, 2018 at 9:45 AM Eric Wieser <wieser.eric+nu...@gmail.com> >>> wrote: >>> >>>> Here's how that could look >>>> >>>> >>>> https://numpyintegration-ericwieser.notebooks.azure.com/j/notebooks/pprint.ipynb >>>> >>>> Feel free to play around and see if you can produce something more >>>> useful >>>> >>>> >>>> >>>> On Mon, 5 Nov 2018 at 23:28 Foad Sojoodi Farimani < >>>> f.s.farim...@gmail.com> wrote: >>>> >>>>> It is not highking if I asked for it :)) >>>>> for IPython/Jupyter using Markdown/LaTeX would be awesome >>>>> or even better using HTML to add sliders just like Pandas... >>>>> >>>>> F. >>>>> >>>>> On Tue, Nov 6, 2018 at 6:51 AM Eric Wieser < >>>>> wieser.eric+nu...@gmail.com> wrote: >>>>> >>>>>> Hijacking this thread while on the topic of pprint - we might want to >>>>>> look into a table-based `_html_repr_` or `_latex_repr_` for use in >>>>>> ipython >>>>>> - where we can print the full array and let scrollbars replace ellipses. >>>>>> >>>>>> Eric >>>>>> >>>>>> On Mon, 5 Nov 2018 at 21:11 Mark Harfouche <mark.harfou...@gmail.com> >>>>>> wrote: >>>>>> >>>>>>> Foad, >>>>>>> >>>>>>> Visualizing data is definitely a complex field. I definitely feel >>>>>>> your pain. >>>>>>> Printing your data is but one way of visualizing it, and probably >>>>>>> only useful for very small and constrained datasets. >>>>>>> Have you looked into set_printoptions >>>>>>> <https://docs.scipy.org/doc/numpy-1.15.1/reference/generated/numpy.set_printoptions.html> >>>>>>> to see how numpy’s existing capabilities might help you with your >>>>>>> visualization? >>>>>>> >>>>>>> The code you showed seems quite good. I wouldn’t worry about >>>>>>> performance when it comes to functions that will seldom be called in >>>>>>> tight >>>>>>> loops. >>>>>>> As you’ll learn more about python and numpy, you’ll keep expanding >>>>>>> it to include more use cases. >>>>>>> For many of my projects, I create small submodules for visualization >>>>>>> tailored to the specific needs of the particular project. >>>>>>> I’ll try to incorporate your functions and see how I use them. >>>>>>> >>>>>>> Your original post seems to have some confusion about C Style vs F >>>>>>> Style ordering. I hope that has been resolved. >>>>>>> There is also a lot of good documentation >>>>>>> >>>>>>> https://docs.scipy.org/doc/numpy/user/numpy-for-matlab-users.html#numpy-for-matlab-users-notes >>>>>>> about transitioning from matlab. >>>>>>> >>>>>>> Mark >>>>>>> >>>>>>> On Mon, Nov 5, 2018 at 4:46 PM Foad Sojoodi Farimani < >>>>>>> f.s.farim...@gmail.com> wrote: >>>>>>> >>>>>>>> Hello everyone, >>>>>>>> >>>>>>>> Following this question >>>>>>>> <https://stackoverflow.com/q/53126305/4999991>, I'm convinced that >>>>>>>> numpy ndarrays are not MATLAB/mathematical multidimentional matrices >>>>>>>> and I >>>>>>>> should stop expecting them to be. However I still think it would have >>>>>>>> a lot >>>>>>>> of benefit to have a function like sympy's pprint to pretty print. >>>>>>>> something like pandas .head and .tail method plus .left .right .UpLeft >>>>>>>> .UpRight .DownLeft .DownRight methods. when nothing mentioned it would >>>>>>>> show >>>>>>>> 4 corners and put dots in the middle if the array is to big for the >>>>>>>> terminal. >>>>>>>> >>>>>>>> Best, >>>>>>>> Foad >>>>>>>> _______________________________________________ >>>>>>>> NumPy-Discussion mailing list >>>>>>>> NumPy-Discussion@python.org >>>>>>>> https://mail.python.org/mailman/listinfo/numpy-discussion >>>>>>>> >>>>>>> _______________________________________________ >>>>>>> NumPy-Discussion mailing list >>>>>>> NumPy-Discussion@python.org >>>>>>> https://mail.python.org/mailman/listinfo/numpy-discussion >>>>>>> >>>>>> _______________________________________________ >>>>>> NumPy-Discussion mailing list >>>>>> NumPy-Discussion@python.org >>>>>> https://mail.python.org/mailman/listinfo/numpy-discussion >>>>>> >>>>> _______________________________________________ >>>>> NumPy-Discussion mailing list >>>>> NumPy-Discussion@python.org >>>>> https://mail.python.org/mailman/listinfo/numpy-discussion >>>>> >>>> _______________________________________________ >>>> NumPy-Discussion mailing list >>>> NumPy-Discussion@python.org >>>> https://mail.python.org/mailman/listinfo/numpy-discussion >>>> >>> _______________________________________________ >>> NumPy-Discussion mailing list >>> NumPy-Discussion@python.org >>> https://mail.python.org/mailman/listinfo/numpy-discussion >>> >> _______________________________________________ >> NumPy-Discussion mailing list >> NumPy-Discussion@python.org >> https://mail.python.org/mailman/listinfo/numpy-discussion >> >
_______________________________________________ NumPy-Discussion mailing list NumPy-Discussion@python.org https://mail.python.org/mailman/listinfo/numpy-discussion