-
Notifications
You must be signed in to change notification settings - Fork 98
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
MAINT: fix marker size type mismatch error #859
Changes from 7 commits
95afa2e
3e71256
64865c9
ea1d2eb
8142ffc
d90fe94
eabdfeb
0c178d2
cf34625
fe2695d
fecfa0d
e03dbcd
579f4a0
a9f0455
0bd3be7
94c3b41
522f272
4f3c87b
56ac53d
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -17,7 +17,7 @@ | |
|
||
# Enthought library imports | ||
from enable.api import black_color_trait, ColorTrait, MarkerTrait | ||
from traits.api import Any, Bool, Callable, Enum, Float, Str | ||
from traits.api import Any, Array, Bool, Callable, Enum, Float, Int, Str, Union | ||
|
||
# local imports | ||
from chaco.base_1d_plot import Base1DPlot | ||
|
@@ -32,7 +32,9 @@ class ScatterPlot1D(Base1DPlot): | |
marker = MarkerTrait | ||
|
||
# The pixel size of the marker, not including the thickness of the outline. | ||
marker_size = Float(4.0) | ||
marker_size = Union(Float, Int, | ||
Array(Float), Array(Int), | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. This isn't how the There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Got it, thanks! |
||
default_value=None) | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Why changing the defaut to None? The 4.0 value was a good default. By changing the default, you now have to update the The upstream issue was related to the fact that only floats were supported. Using a Union type, you now allow other data type, which is solving the problem. Adding a tests that reproduces the uptsream problem would be good There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. I somehow remembered that using 4.0 as default will raise an error, but after retest, works fine... Will use 4.0 instead. There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. @homosapien-lcy adding a new manual example is not adding a test! |
||
|
||
# The CompiledPath to use if **marker** is set to "custom". This attribute | ||
# must be a compiled path for the Kiva context onto which this plot will | ||
|
@@ -111,6 +113,10 @@ def _draw_plot(self, gc, view_bounds=None, mode="normal"): | |
self._render(gc, pts) | ||
|
||
def _render(self, gc, pts): | ||
# check for None marker size and give a default value | ||
if self.marker_size is None: | ||
self.marker_size = 4.0 | ||
|
||
with gc: | ||
gc.clip_to_rect(self.x, self.y, self.width, self.height) | ||
if not self.index: | ||
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The
Float
trait should already accept integers, so I'm not sure that it adds much to acceptInt
here, especially given that the marker size is conceptually a float here.There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Yeah, I found that Float trait can accomodate int as well, just cahnged.