SourceForge logo
SourceForge logo
Menu

matplotlib-users — Discussion related to using matplotlib

You can subscribe to this list here.

2003 Jan
Feb
Mar
Apr
May
(3)
Jun
Jul
Aug
(12)
Sep
(12)
Oct
(56)
Nov
(65)
Dec
(37)
2004 Jan
(59)
Feb
(78)
Mar
(153)
Apr
(205)
May
(184)
Jun
(123)
Jul
(171)
Aug
(156)
Sep
(190)
Oct
(120)
Nov
(154)
Dec
(223)
2005 Jan
(184)
Feb
(267)
Mar
(214)
Apr
(286)
May
(320)
Jun
(299)
Jul
(348)
Aug
(283)
Sep
(355)
Oct
(293)
Nov
(232)
Dec
(203)
2006 Jan
(352)
Feb
(358)
Mar
(403)
Apr
(313)
May
(165)
Jun
(281)
Jul
(316)
Aug
(228)
Sep
(279)
Oct
(243)
Nov
(315)
Dec
(345)
2007 Jan
(260)
Feb
(323)
Mar
(340)
Apr
(319)
May
(290)
Jun
(296)
Jul
(221)
Aug
(292)
Sep
(242)
Oct
(248)
Nov
(242)
Dec
(332)
2008 Jan
(312)
Feb
(359)
Mar
(454)
Apr
(287)
May
(340)
Jun
(450)
Jul
(403)
Aug
(324)
Sep
(349)
Oct
(385)
Nov
(363)
Dec
(437)
2009 Jan
(500)
Feb
(301)
Mar
(409)
Apr
(486)
May
(545)
Jun
(391)
Jul
(518)
Aug
(497)
Sep
(492)
Oct
(429)
Nov
(357)
Dec
(310)
2010 Jan
(371)
Feb
(657)
Mar
(519)
Apr
(432)
May
(312)
Jun
(416)
Jul
(477)
Aug
(386)
Sep
(419)
Oct
(435)
Nov
(320)
Dec
(202)
2011 Jan
(321)
Feb
(413)
Mar
(299)
Apr
(215)
May
(284)
Jun
(203)
Jul
(207)
Aug
(314)
Sep
(321)
Oct
(259)
Nov
(347)
Dec
(209)
2012 Jan
(322)
Feb
(414)
Mar
(377)
Apr
(179)
May
(173)
Jun
(234)
Jul
(295)
Aug
(239)
Sep
(276)
Oct
(355)
Nov
(144)
Dec
(108)
2013 Jan
(170)
Feb
(89)
Mar
(204)
Apr
(133)
May
(142)
Jun
(89)
Jul
(160)
Aug
(180)
Sep
(69)
Oct
(136)
Nov
(83)
Dec
(32)
2014 Jan
(71)
Feb
(90)
Mar
(161)
Apr
(117)
May
(78)
Jun
(94)
Jul
(60)
Aug
(83)
Sep
(102)
Oct
(132)
Nov
(154)
Dec
(96)
2015 Jan
(45)
Feb
(138)
Mar
(176)
Apr
(132)
May
(119)
Jun
(124)
Jul
(77)
Aug
(31)
Sep
(34)
Oct
(22)
Nov
(23)
Dec
(9)
2016 Jan
(26)
Feb
(17)
Mar
(10)
Apr
(8)
May
(4)
Jun
(8)
Jul
(6)
Aug
(5)
Sep
(9)
Oct
(4)
Nov
Dec
2017 Jan
(5)
Feb
(7)
Mar
(1)
Apr
(5)
May
Jun
(3)
Jul
(6)
Aug
(1)
Sep
Oct
(2)
Nov
(1)
Dec
2018 Jan
Feb
Mar
Apr
(1)
May
Jun
Jul
Aug
Sep
Oct
Nov
Dec
2020 Jan
Feb
Mar
Apr
May
(1)
Jun
Jul
Aug
Sep
Oct
Nov
Dec
2025 Jan
(1)
Feb
Mar
Apr
May
Jun
Jul
Aug
Sep
Oct
Nov
Dec
S M T W T F S
1
2
(6)
3
(5)
4
(5)
5
6
7
8
(2)
9
10
(1)
11
(4)
12
(1)
13
14
(2)
15
(1)
16
(3)
17
(5)
18
19
(7)
20
(1)
21
(1)
22
23
(2)
24
(4)
25
(5)
26
(3)
27
28
(3)
29
(3)
30
(5)





Showing 3 results of 3

From: Benjamin R. <ben...@ou...> - 2013年09月16日 16:37:08
On Sat, Sep 14, 2013 at 2:45 PM, Alexandre Voitenok <
avo...@ac...> wrote:
> Hi
> I am trying to figure out how to change font color (as opposed to the fill
> color) in select cells in Table. Is there a way to do this?
> Below is an example:
>
> import matplotlib.pyplot as plt
> import numpy as np
> import pandas as pd
> from matplotlib.table import Table
> def main():
> data = pd.DataFrame(np.random.random((12,8)),
> columns=['A','B','C','D','E','F','G','H'])
> returnsTable(data)
> plt.show()
>
> def returnsTable(data, fmt='{:.2f}/{:.1f}'):
> fig=plt.figure(figsize=(8,5))
> ax=plt.subplot(111)
> ax.set_axis_off()
> tb = Table(ax, bbox=[0,0,1,1])
> tb.auto_set_font_size(False)
>
> colorDict={-3:"#D00000",-2:"#FF5050",-1:"#FFBFBF",0:"#FFFFFF",1:"#D0FFD0",2:"#40FF40",3:"#00C000"}
>
> nrows, ncols = data.shape
> width, height = 1.0 / ncols, 1.0 / nrows
>
> dArray=data.values.reshape(np.product(data.shape))
> # mean&sigma..
> mean=np.average(dArray)
> sigma=np.std(dArray)
>
> # Add cells
> for (i,j), val in np.ndenumerate(data):
> z=(val-mean)/sigma
> idx = 0 if int(z)==0 else (max((int(z),-3)) if z<0 else
> min((int(z),3)))
> color = colorDict[idx]
>
> ##############################################
> ## IS THERE A WAY TO ALSO CHANGE FONT COLOR?
> tb.add_cell(i+1, j+1, width, height, text=fmt.format(val,z),
> loc='center', facecolor=color)
>
>
> # Row labels in cells themselves
> # use -1 with edgecolor='none' for outside the grid
> for i, label in enumerate(data.index):
> tb.add_cell(i+1, 0, width*2, height, text=label, loc='right',
> facecolor='none')
>
>
> # Column Labels...
> for j, label in enumerate(data.columns):
> tb.add_cell(0, j+1, width, height/2, text=label, loc='center',
> facecolor='none')
> tb.set_fontsize(8)
> ax.add_table(tb)
> return fig
>
> main()
>
>
>
Hmm, it doesn't look like you can do it from the add_cell() function. It
creates a Cell object, which in turn creates a Text object, but provides no
means of passing much down to that Text object. The Table object has a
dictionary of Cell objects: self._cells[(row, col)] = cell, keyed by the
tuple of row and column numbers. You could do something like this:
tb._cells[(i+1, j+1)]._text.set_color('yellow')
Note, I did not test the above line, but I suspect that should work.
Cheers!
Ben Root
From: Benjamin R. <ben...@ou...> - 2013年09月16日 13:15:48
On Sun, Sep 15, 2013 at 11:59 PM, C M <cmp...@gm...> wrote:
> Just a follow-up on this problem...
>
> I've found now that the index is only off if the plot is zoomed, and in
> the following way. When I zoom, the first point that is visible in the
> plot window will have index = 0, the next point will have index = 1, and so
> forth. If I zoom another section of the points, the indices are "reset" in
> this same way.
>
> What's really bizarre is that this is only occurring on one plot. When I
> try to reproduce the problem on other plots (so far at least), I can't.
>
> Any suggestions for how to chase this down would be very welcome.
>
> Thanks.
>
>
That is a very useful observation. I am not very familiar with the artist
picking code, but if I have to guess, I would wonder if indices are being
determined from a path created *after* clip_to_rect() is used internally.
Given that you are having difficulties in reproducing this issue in other
plots, I would suggest trying to pare down your badly behaving code as much
as you can and post it here. Furthermore, it would also be useful to
determine if the issue still occurs in v1.3 or in the master branch.
Cheers!
Ben Root
From: C M <cmp...@gm...> - 2013年09月16日 04:00:09
Just a follow-up on this problem...
I've found now that the index is only off if the plot is zoomed, and in the
following way. When I zoom, the first point that is visible in the plot
window will have index = 0, the next point will have index = 1, and so
forth. If I zoom another section of the points, the indices are "reset" in
this same way.
What's really bizarre is that this is only occurring on one plot. When I
try to reproduce the problem on other plots (so far at least), I can't.
Any suggestions for how to chase this down would be very welcome.
Thanks.
On Sun, Sep 15, 2013 at 5:30 PM, C M <cmp...@gm...> wrote:
> I have Matplotlib 1.1.0, and am doing point picking (using the OO approach
> to Matplotlib, and embedded in wxPython). My relevant code is as follows:
>
> #connect the pick event to the pick event handler:
> self.cid = self.canvas.mpl_connect('pick_event', self.on_pick)
>
> #This is the relevant part of the pick event handler:
> def on_pick(self, event):
> if isinstance(event.artist, Line2D):
> ind = event.ind
> print 'ind is: ', str(ind)
>
> This had been working in some cases, but I've found a case in which it
> appears to be giving me a value for ind that doesn't make sense. For
> example, I have a plot with two lines on it (and two y axes), each with
> over 50 points. When I pick one of the points right near the end, I expect
> the ind here will be about 50. However, it prints ind is: 3. In other
> words, the wrong index value. This is a serious issue for me, because I
> then use that index to look up information about that point.
>
> What could be going on here?
>
> Thanks,
> Che
>

Showing 3 results of 3

Want the latest updates on software, tech news, and AI?
Get latest updates about software, tech news, and AI from SourceForge directly in your inbox once a month.
Thanks for helping keep SourceForge clean.
X





Briefly describe the problem (required):
Upload screenshot of ad (required):
Select a file, or drag & drop file here.
Screenshot instructions:

Click URL instructions:
Right-click on the ad, choose "Copy Link", then paste here →
(This may not be possible with some types of ads)

More information about our ad policies

Ad destination/click URL:

AltStyle によって変換されたページ (->オリジナル) /