SignalPlotter Class Reference
from PyKDE4.plasma import *
Inherits: QGraphicsWidget → QObject
Namespace: Plasma
Detailed Description
Methods | |
__init__ (self, QGraphicsItem parent=0) | |
addPlot (self, QColor color) | |
addSample (self, [float] samples) | |
QColor | backgroundColor (self) |
calculateNiceRange (self) | |
drawAxisText (self, QPainter p, int top, int h) | |
drawBackground (self, QPainter p, int w, int h) | |
drawHorizontalLines (self, QPainter p, int top, int w, int h) | |
drawPlots (self, QPainter p, int top, int w, int h, int horizontalScale) | |
drawThinFrame (self, QPainter p, int w, int h) | |
drawTopBarContents (self, QPainter p, int x, int width, int height) | |
drawTopBarFrame (self, QPainter p, int separatorX, int height) | |
drawVerticalLines (self, QPainter p, int top, int w, int h) | |
drawWidget (self, QPainter p, long w, long height, int horizontalScale) | |
QFont | font (self) |
QColor | fontColor (self) |
QPixmap | getSnapshotImage (self, long width, long height) |
QColor | horizontalLinesColor (self) |
long | horizontalLinesCount (self) |
long | horizontalScale (self) |
float | lastValue (self, long i) |
QString | lastValueAsString (self, long i) |
paint (self, QPainter painter, QStyleOptionGraphicsItem option, QWidget widget) | |
[Plasma.PlotColor] | plotColors (self) |
removePlot (self, long pos) | |
reorderPlots (self, [long] newOrder) | |
scale (self, float delta) | |
float | scaledBy (self) |
setBackgroundColor (self, QColor color) | |
setFont (self, QFont font) | |
setFontColor (self, QColor color) | |
setGeometry (self, QRectF geometry) | |
setHorizontalLinesColor (self, QColor color) | |
setHorizontalLinesCount (self, long count) | |
setHorizontalScale (self, long scale) | |
setShowHorizontalLines (self, bool value) | |
setShowLabels (self, bool value) | |
setShowTopBar (self, bool value) | |
setShowVerticalLines (self, bool value) | |
setStackPlots (self, bool stack) | |
setSvgBackground (self, QString filename) | |
setThinFrame (self, bool set) | |
setTitle (self, QString title) | |
setUnit (self, QString unit) | |
setUseAutoRange (self, bool value) | |
setVerticalLinesColor (self, QColor color) | |
setVerticalLinesDistance (self, long distance) | |
setVerticalLinesScroll (self, bool value) | |
setVerticalRange (self, float min, float max) | |
bool | showHorizontalLines (self) |
bool | showLabels (self) |
bool | showTopBar (self) |
bool | showVerticalLines (self) |
bool | stackPlots (self) |
QString | svgBackground (self) |
bool | thinFrame (self) |
QString | title (self) |
QString | unit (self) |
updateDataBuffers (self) | |
bool | useAutoRange (self) |
QColor | verticalLinesColor (self) |
long | verticalLinesDistance (self) |
bool | verticalLinesScroll (self) |
float | verticalMaxValue (self) |
float | verticalMinValue (self) |
Method Documentation
__init__ | ( | self, | ||
QGraphicsItem | parent=0 | |||
) |
addPlot | ( | self, | ||
QColor | color | |||
) |
Add a new line to the graph plotter, with the specified color. Note that the order you add the plots must be the same order that the same data is given in (unless you reorder the plots).
- Parameters:
-
color the color to use for this plot
addSample | ( | self, | ||
[float] | samples | |||
) |
Add data to the graph, and advance the graph by one time period. The data must be given as a list in the same order that the plots were added (or consequently reordered).
- Parameters:
-
samples a list with the new value for each plot
QColor backgroundColor | ( | self ) |
The color to set the background. This might not be seen if an svg is also set.
- Returns:
- the color of the plotter background
calculateNiceRange | ( | self ) |
drawAxisText | ( | self, | ||
QPainter | p, | |||
int | top, | |||
int | h | |||
) |
drawBackground | ( | self, | ||
QPainter | p, | |||
int | w, | |||
int | h | |||
) |
drawHorizontalLines | ( | self, | ||
QPainter | p, | |||
int | top, | |||
int | w, | |||
int | h | |||
) |
drawPlots | ( | self, | ||
QPainter | p, | |||
int | top, | |||
int | w, | |||
int | h, | |||
int | horizontalScale | |||
) |
drawThinFrame | ( | self, | ||
QPainter | p, | |||
int | w, | |||
int | h | |||
) |
drawTopBarContents | ( | self, | ||
QPainter | p, | |||
int | x, | |||
int | width, | |||
int | height | |||
) |
drawTopBarFrame | ( | self, | ||
QPainter | p, | |||
int | separatorX, | |||
int | height | |||
) |
drawVerticalLines | ( | self, | ||
QPainter | p, | |||
int | top, | |||
int | w, | |||
int | h | |||
) |
drawWidget | ( | self, | ||
QPainter | p, | |||
long | w, | |||
long | height, | |||
int | horizontalScale | |||
) |
QFont font | ( | self ) |
The font used for the axis
- Returns:
- the font used to draw the text of the vertical values
QColor fontColor | ( | self ) |
The color of the font used for the axis
- Returns:
- the color used to draw the text of the vertical values
QPixmap getSnapshotImage | ( | self, | ||
long | width, | |||
long | height | |||
) |
Render the graph to the specified width and height, and return it as an image. This is useful, for example, if you draw a small version of the graph, but then want to show a large version in a tooltip etc
- Parameters:
-
width the width of the snapshot height the height of the snapshot
- Returns:
- a snapshot of the plotter as an image
QColor horizontalLinesColor | ( | self ) |
The color of the horizontal grid lines
- Returns:
- the color used to draw the horizontal grid lines
long horizontalLinesCount | ( | self ) |
The number of horizontal lines to draw. Doesn't include the top most and bottom most lines.
- Returns:
- the number of horizontal lines that will be drawn
long horizontalScale | ( | self ) |
The number of pixels horizontally between data points
- Returns:
- the number of pixel drawn between two data points
float lastValue | ( | self, | ||
long | i | |||
) |
Return the last value that we have for plot i. Returns 0 if not known.
- Parameters:
-
i the plot we like to have the last value from
- Returns:
- the last value of this plot or 0 if not found
QString lastValueAsString | ( | self, | ||
long | i | |||
) |
Return a translated string like: "34 %" or "100 KB" for plot i
- Parameters:
-
i the plot we like to have the value as string from
- Returns:
- the last value of this plot as a string
paint | ( | self, | ||
QPainter | painter, | |||
QStyleOptionGraphicsItem | option, | |||
QWidget | widget | |||
) |
[Plasma.PlotColor] plotColors | ( | self ) |
Return the list of plot colors, in the order that the plots were added (or later reordered).
- Returns:
- a list containing the color of every plot
removePlot | ( | self, | ||
long | pos | |||
) |
Removes the plot at the specified index.
- Parameters:
-
pos the index of the plot to be removed
reorderPlots | ( | self, | ||
[long] | newOrder | |||
) |
Reorder the plots into the order given. For example:
KSignalPlotter *s = KSignalPlotter(parent); s->addPlot(Qt.Blue); s->addPlot(Qt.Green); QList neworder; neworder << 1 << 0; reorderPlots(newOrder); //Now the order is Green then Blue
- Parameters:
-
newOrder a list with the new position of each plot
scale | ( | self, | ||
float | delta | |||
) |
Scale all the values down by the given amount. This is useful when the data is given in, say, kilobytes, but you set the units as megabytes. Thus you would have to call this with value set to 1024. This affects all the data already entered.
- Parameters:
-
delta the factor used to scale down the values
float scaledBy | ( | self ) |
Amount scaled down by.
- See also:
- scale
- Returns:
- the factor used to scale down the values
setBackgroundColor | ( | self, | ||
QColor | color | |||
) |
The color to set the background. This might not be seen if an svg is also set.
- Parameters:
-
color the color to use for the plotter background
setFont | ( | self, | ||
QFont | font | |||
) |
The font used for the axis
- Parameters:
-
font the font used to draw the text of the vertical values
setFontColor | ( | self, | ||
QColor | color | |||
) |
The color of the font used for the axis
- Parameters:
-
color the color used to draw the text of the vertical values
setGeometry | ( | self, | ||
QRectF | geometry | |||
) |
Overwritten to be notified of size changes. Needed to update the data buffers that are used to store the samples.
setHorizontalLinesColor | ( | self, | ||
QColor | color | |||
) |
The color of the horizontal grid lines
- Parameters:
-
color the color used to draw the horizontal grid lines
setHorizontalLinesCount | ( | self, | ||
long | count | |||
) |
The number of horizontal lines to draw. Doesn't include the top most and bottom most lines.
- Parameters:
-
count the number of horizontal lines to draw
setHorizontalScale | ( | self, | ||
long | scale | |||
) |
Set the number of pixels horizontally between data points
- Parameters:
-
scale the number of pixel to draw between two data points
setShowHorizontalLines | ( | self, | ||
bool | value | |||
) |
Whether to draw the horizontal grid lines
- Parameters:
-
value true if the lines should be drawn, otherwise false
setShowLabels | ( | self, | ||
bool | value | |||
) |
Whether to show the vertical axis labels
- Parameters:
-
value true if the values for the vertical axis should get drawn
setShowTopBar | ( | self, | ||
bool | value | |||
) |
Whether to show the title etc at the top. Even if set, it won't be shown if there isn't room
- Parameters:
-
value true if the topbar should be shown
setShowVerticalLines | ( | self, | ||
bool | value | |||
) |
Whether to draw the vertical grid lines
- Parameters:
-
value true if the lines should be drawn, otherwise false
setStackPlots | ( | self, | ||
bool | stack | |||
) |
Whether to stack the plots on top of each other. The first plot added will be at the bottom. The next plot will be drawn on top, and so on.
- Parameters:
-
stack true if the plots should be stacked
setSvgBackground | ( | self, | ||
QString | filename | |||
) |
The filename of the svg background. Set to empty to disable again.
- Parameters:
-
filename the SVG file to use as a background image
setThinFrame | ( | self, | ||
bool | set | |||
) |
Whether to show a white line on the left and bottom of the widget, for a 3D effect
- Parameters:
-
set true if the frame should get drawn
setTitle | ( | self, | ||
QString | title | |||
) |
Set the title of the graph. Drawn in the top left.
- Parameters:
-
title the title to use in the plotter
setUnit | ( | self, | ||
QString | unit | |||
) |
Set the units. Drawn on the vertical axis of the graph. Must be already translated into the local language.
- Parameters:
-
unit the unit string to use
setUseAutoRange | ( | self, | ||
bool | value | |||
) |
Set the minimum and maximum values on the vertical axis automatically from the data available.
- Parameters:
-
value true if the plotter should calculate its own min and max values, otherwise false
setVerticalLinesColor | ( | self, | ||
QColor | color | |||
) |
The color of the vertical grid lines
- Parameters:
-
color the color used to draw the vertical grid lines
setVerticalLinesDistance | ( | self, | ||
long | distance | |||
) |
The horizontal distance between the vertical grid lines
- Parameters:
-
distance the distance between two vertical grid lines
setVerticalLinesScroll | ( | self, | ||
bool | value | |||
) |
Whether the vertical lines move with the data
- Parameters:
-
value true if the vertical lines should move with the data
setVerticalRange | ( | self, | ||
float | min, | |||
float | max | |||
) |
Change the minimum and maximum values drawn on the graph. Note that these values are sanitised. For example, if you set the minimum as 3, and the maximum as 97, then the graph would be drawn between 0 and 100. The algorithm to determine this "nice range" attempts to minimize the number of non-zero digits.
Use setAutoRange instead to determine the range automatically from the data.
- Parameters:
-
min the minimum value to use for the vertical axis max the maximum value to use for the vertical axis
bool showHorizontalLines | ( | self ) |
Whether to draw the horizontal grid lines
- Returns:
- true if the lines will be drawn, otherwise false
bool showLabels | ( | self ) |
Whether to show the vertical axis labels
- Returns:
- true if the values for the vertical axis will get drawn
bool showTopBar | ( | self ) |
Whether to show the title etc at the top. Even if set, it won't be shown if there isn't room
- Returns:
- true if the topbar will be shown
bool showVerticalLines | ( | self ) |
Whether the vertical grid lines will be drawn
- Returns:
- true if the lines will be drawn, otherwise false
bool stackPlots | ( | self ) |
Whether to stack the plots.
- See also:
- setStackPlots
- Returns:
- true if the plots will be stacked
QString svgBackground | ( | self ) |
The filename of the svg background. Set to empty to disable again.
- Returns:
- the file used as a background image
bool thinFrame | ( | self ) |
show a white line on the left and botton of the widget for a 3D effect
- Returns:
- true if frame show be draw
- Since:
- 4.3
QString title | ( | self ) |
Get the title of the graph. Drawn in the top left.
- Returns:
- the title to use in the plotter
QString unit | ( | self ) |
Return the units used on the vertical axis of the graph.
- Returns:
- the unit string used
updateDataBuffers | ( | self ) |
bool useAutoRange | ( | self ) |
Whether the vertical axis range is set automatically.
- Returns:
- true if the plotter calculates its own min and max values, otherwise false
QColor verticalLinesColor | ( | self ) |
The color of the vertical grid lines
- Returns:
- the color used to draw the vertical grid lines
long verticalLinesDistance | ( | self ) |
The horizontal distance between the vertical grid lines
- Returns:
- the distance between two vertical grid lines
bool verticalLinesScroll | ( | self ) |
Whether the vertical lines move with the data
- Returns:
- true if the vertical lines will move with the data
float verticalMaxValue | ( | self ) |
Get the max value of the vertical axis.
- See also:
- changeRange
- Returns:
- the maximum value to use for the vertical axis
float verticalMinValue | ( | self ) |
Get the min value of the vertical axis.
- See also:
- changeRange
- Returns:
- the minimum value to use for the vertical axis