SourceForge logo
SourceForge logo
Menu

matplotlib-users

From: Deepa M. <dee...@gm...> - 2017年10月01日 15:54:19
Hi All,
I would like to plot a 1D heat map for a set of numbers present in a list.
Here is my data
A
B
C
D
E
F
G
H
I
-0.02073
0.062098
-0.75256
0.000121
6.87E-17
0.430649
0.10735
0.548055
-1.08628
I would like to obtain a plot as below
I could find examples on 2D heat maps.I would like to get help on generating 1D maps.I would be grateful for any help you could provide
Thanks,
Deepa
From: aint <ain...@gm...> - 2011年08月31日 18:22:24
Hi,
I have a code for making graphical representations of sentences, Sentence is
represented as a bar, and under in you can represent the words. It works
fine and I have an example at the end. 
Now I wanted to add some more features to it, but I am stuck.
you can see the previous post from this link
Now, if we assign a number to each letter in a sentence and get a list of
these numbers,
[2,4,7,-7,8,6,4,4,-7,9,5,3,-7,9,5,-3,7,8,9,5,3,6,8,9,-5,3]
can I create a 1D heat map with this list as and additional bar?
First problem will be to get the range of numbers and normalize it, or we
should be able to assign a range for the heat map.
It would be great if you can help.
here is the example code.
[CODE]
text ='''World number two Nadal breezed through the first set, taking it
with breaks of serve in the fourth and sixth games.
Monfils put up more resistance in an erratic second set but his wayward
display was summed up by a double fault which sealed Nadal's victory.
The Spaniard will face a semi-final against compatriot Nicolas Almagro, who
beat Austrian Juergen Melzer 6-3 6-1.
In the women's competition, fourth seed Venus Williams booked her place in
the semi-finals with a 6-3 6-3 win over Australia's Samantha Stosur.'''
import pylab
import matplotlib
# Put text into list of sentences 
sentences = []
sentences = text.split('\n')
# Get the lenght of longest sentence-Lmax and number of sentences
Lmax=0
it = 0
for i in sentences:
 it = it + 1
 LenSen= len(i)
 if LenSen > Lmax:
 Lmax = LenSen
totalnumber = it
#Set the image properties
pylab.rcParams['figure.figsize'] = [Lmax/20, totalnumber]
pylab.rcParams['figure.subplot.left'] = 0.2 # Left margin
pylab.rcParams['figure.subplot.right'] = 1.0-0.04 # Right margin
pylab.rcParams['font.size'] = 7
# Axes range from 0 to 1 for x-axis (simplifying calls to .axhspan()) and 
# 20 down to 0 for Y-values because that's convenient for this example
ax = [0, 1, totalnumber+1, 0] # [xlo, xhi, ylo, yhi]
# printer is a drawing module
def printer(searchterm, Input,start,end,xstart,color):
 lens = len(searchterm)
 while True:
 inDex = Input.find(searchterm, start,end)
 if inDex == -1:
 break
 inDex = float(inDex)
 inDS=inDex/Lmax
 inDE=(inDex+lens)/Lmax
 matplotlib.pyplot.axhspan(it+xstart,it+0.2+xstart, xmin=inDS,
xmax=inDE, ec='k', fc=color)
 # if search string not found, find() returns -1
 # search is complete, break out of the while loop
 # move to next possible start position
 inDex= int(inDex)
 start = inDex + 1
it=0 
for i in sentences:
 it = it+1
 LenSen= len(i)
 LenF = float(LenSen)
 matplotlib.pyplot.axhspan(it+0.2,it+0.4, xmin=0, xmax=LenF/Lmax,
ec='k', fc='r') #creates sentence bar
 pylab.text(-0.2, it+0.4, 'sentence'+str(it)+' with spaces') # create
the sentence bar 
 printer(' ', i, 1, LenSen,0.2,'b') #blue represents the spaces on
sentence bar
 printer('the', i, 1, LenSen,0,'y') #above sentence bar, yellow
represents 'the'
 pylab.text(-0.2, it+0.2, 'the')
pylab.axis(ax)
matplotlib.pyplot.title("Analysis")
matplotlib.pyplot.xticks((),()) # No labels for X-axis
matplotlib.pyplot.yticks((),()) # No labels for Y-axis
pylab.show()
[CODE]
-- 
View this message in context: http://old.nabble.com/1D-heat-map-tp32374379p32374379.html
Sent from the matplotlib - users mailing list archive at Nabble.com.
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 によって変換されたページ (->オリジナル) /