Porting GRUtils to GR.rb
kojix2 opened this issue · comments
OVERVIEW of GRUtils
General
- _min(a)
- _max(a)
- hasnan(a)
- lookup
Colors
- COLOR_SCHEMS
- BASIC_COLORS
- SERIES_COLORS
- COLOR_INDICES
- resetcolors
- rgb
- color
- colorindex
- COLORMAPS
- colormap
- to_rgba
- applycolorscheme
- colorscheme
Geometries
- struct Geometry
- kind
- x
- y
- c
- spec
- label
- attributes
- Geometry(constructor)
- geometries
- draw
Axes
- AxisRange
- AxisTickData
- struct Axes
- kind
- ranges
- tickdata
- ticklabels
- perspective
- camera
- option
- Axes(constructor)
- minmax
- extrema64
- fix_minmax
- adjustranges!
- set_ticks
- set_axis
- set_ticklabels!
- ticklabel_fun
- set_scale
- _rotate!
- _tilt!
- _focus!
- set_camera
- graham_hull
- axes3frame
- fillaxesbackground
- draw
- draw_polaraxes
- _tickcharheight
Legends
- LEGEND_KINDS
- LEGEND_LOCATIONS
- struct Legend
- Legend(constructor)
- legend_box
- draw
- guide
Colorbars
- struct Colorbar
- range
- tick
- scale
- margin
- colors
- EMPTYCOLORBAR
- Colorbar(constructor)
- draw
Plotobjects
- struct Viewport
- outer
- inner
- EMPTYVIEWORT
- Viewport(constructor)
- set_ratio!
- struct PlotObject
- viewport
- axes
- geom
- legend
- colorbar
- attributes
- PlotObject(constructor)
- makeplot!
- plotmargins
- fillbackground
- draw
- drawlabels
Text
- search
- inqtext
- stringsize
- text
Figures
- struct Figure
- workstation
- plots
- EMPTYFIGURE
- CURRENTFIGURE
- Figure
- Base.Multimedia.display
- subplot!
- replaceplot!
- draw
Frontend
- KEYS_GEOM_ATTRIBUTES
- KEYS_PLOT_ATTRIBUTES
- macro plotfunction
- _setargs_line
- _setargs_stair
- _setargs_stem
- _setargs_errorbar
- _setargs_polar
- Recursive call in case of multiple x-y pairs
- barcoordinates
- stackedbars
- groupbars
- _setargs_bar
- hist
- _setargs_hist
- _setargs_polarhist
- plot3
- arrowhead
- quiver_xyfactors
- _setargs_quiver
- _setargs_quiver3
- _setargs_scatter3
- _setargs_contour
- _setargs_tricont
- _setargs_surface
- _setargs_heatmap
- _setargs_hexbin
- _setargs_imshow
- _setargs_isosurf
- _setargs_shade
- _setargs_volume
- oplot!
- _setargs_annotation
- annotations!
- savefig
Attributes
- LOCATIONS
- legend!
- legend
- choosegemos
- title!
- title
- _config_axislimits!
- grid!
- grid
- colorbar!
- colorbar
- aspectratio!
- aspectratio
- radians!
- radians
- panzoom!
- panzoom
- zoomgr3!
- zoom!
- zoom
- viewpoint!
- viewpoint
- rotate!
- tilt!
- rotate
- tilt
- movefocus!
- movefocus
- truncamera!
- truncamera
- colormap!
- colormap
- colorscheme!
- backgroud!
Animations
- resetmime
- videofile
- video
The biggest problem with the current GR.rb is that it is a Ruby library, but it is not object-oriented.
GRUtils and GR.jl are different.
Asymptotic migration is unlikely to be possible. So, I will split the repository.
Should we create https://github.com/red-data-tools/GRUtils.rb ?
Umm.. Maybe no.
I will create a kojix2/GRUtils.rb to add a ruby object to GR.rb.
This will be an experiment.
There will be a lot of changes, including the structure of the objects.
I will report back when I think GRUtis.rb is ready to integrate GR.rb.
But yes. I agree with you in some respects.
I think the "risk of not being able to complete GRUtils.rb" is much greater than the "risk of not being able to create GRUtils correctly".
To be honest, I'm not confident that I can complete GRUtils.rb.
So I think I should move the source code to red-data-tools as soon as possible so that other people besides me have a chance to see it.
That way, I'll be motivated. It's important to stay motivated.
OK. Please notify us when you are ready. :-)