FazBrowse GitHub Viewer
|
Trending
|
URL:
|
Home
Tools:
[Download Repo ZIP]
[View Raw Code]
[Original HTTPS Page]
matplotlib/examples/api/line_with_text.py at master · staticfloat/matplotlib · GitHub
staticfloat
matplotlib
Repository navigation
Code
Pull requests
Actions
Projects
Wiki
Security and quality
Insights
Expand file tree
Breadcrumbs
matplotlib
/
examples
/
api
/
line_with_text.py
Copy path
More file actions
More file actions
Latest commit
History
History
History
65 lines (45 loc) · 1.61 KB
Breadcrumbs
matplotlib
/
examples
/
api
/
line_with_text.py
Copy path
File metadata and controls
65 lines (45 loc) · 1.61 KB
Raw
Copy raw file
Download raw file
Open symbols panel
Edit and raw actions
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
"""
Show how to override basic methods so an artist can contain another
artist. In this case, the line contains a Text instance to label it.
"""
import
numpy
as
np
import
matplotlib
.
pyplot
as
plt
import
matplotlib
.
lines
as
lines
import
matplotlib
.
transforms
as
mtransforms
import
matplotlib
.
text
as
mtext
class
MyLine
(
lines
.
Line2D
):
def
__init__
(
self
,
*
args
,
**
kwargs
):
# we'll update the position when the line data is set
self
.
text
=
mtext
.
Text
(
0
,
0
,
''
)
lines
.
Line2D
.
__init__
(
self
,
*
args
,
**
kwargs
)
# we can't access the label attr until *after* the line is
# inited
self
.
text
.
set_text
(
self
.
get_label
())
def
set_figure
(
self
,
figure
):
self
.
text
.
set_figure
(
figure
)
lines
.
Line2D
.
set_figure
(
self
,
figure
)
def
set_axes
(
self
,
axes
):
self
.
text
.
set_axes
(
axes
)
lines
.
Line2D
.
set_axes
(
self
,
axes
)
def
set_transform
(
self
,
transform
):
# 2 pixel offset
texttrans
=
transform
+
mtransforms
.
Affine2D
().
translate
(
2
,
2
)
self
.
text
.
set_transform
(
texttrans
)
lines
.
Line2D
.
set_transform
(
self
,
transform
)
def
set_data
(
self
,
x
,
y
):
if
len
(
x
):
self
.
text
.
set_position
((
x
[
-
1
],
y
[
-
1
]))
lines
.
Line2D
.
set_data
(
self
,
x
,
y
)
def
draw
(
self
,
renderer
):
# draw my label at the end of the line with 2 pixel offset
lines
.
Line2D
.
draw
(
self
,
renderer
)
self
.
text
.
draw
(
renderer
)
fig
=
plt
.
figure
()
ax
=
fig
.
add_subplot
(
111
)
x
,
y
=
np
.
random
.
rand
(
2
,
20
)
line
=
MyLine
(
x
,
y
,
mfc
=
'red'
,
ms
=
12
,
label
=
'line label'
)
#line.text.set_text('line label')
line
.
text
.
set_color
(
'red'
)
line
.
text
.
set_fontsize
(
16
)
ax
.
add_line
(
line
)
plt
.
show
()
Back
|
FazBrowse Home
|
New Git URL