schrodinger.application.bioluminate.sliderchart module

Tools for using matplotlib charts.

Copyright Schrodinger, LLC. All rights reserved.

schrodinger.application.bioluminate.sliderchart.prevent_overlapping_x_labels(canvas, axes_number=0)

Given a canvas that contains a figure that contains at least one axes instance, checks the x-axis tick labels to make sure they don’t overlap. If they do, the number of ticks is reduced until there is no overlap.

Parameters:
  • canvas (matplotlib canvas object) – the canvas that contains the figure/axes objects
  • axes_number (int) – the index of the axes on the figure to examine. Default is 0, which is the first set of axis added to the figure.
class schrodinger.application.bioluminate.sliderchart.SliderPlot(xvals=None, yvals=None, size=(400, 400), x_label='Residue Sequence', y_label='Values', x_range=None, y_range=None, color='black', cvals=None, bg='white', title='Results', fontsize='small', chart_type='line', marker='square', marker_size=9, shade_color='0.70', hslider_color='red', vslider_color='blue', slider_thickness=3, slider_pick_tolerance=7, slider_moved_callback=None, use_hsliders=True, xstart=0.2, xextent=None)

Bases: PyQt5.QtWidgets.QFrame

A chart that contains four lines the user can slide to select a region of the chart.

__init__(xvals=None, yvals=None, size=(400, 400), x_label='Residue Sequence', y_label='Values', x_range=None, y_range=None, color='black', cvals=None, bg='white', title='Results', fontsize='small', chart_type='line', marker='square', marker_size=9, shade_color='0.70', hslider_color='red', vslider_color='blue', slider_thickness=3, slider_pick_tolerance=7, slider_moved_callback=None, use_hsliders=True, xstart=0.2, xextent=None)

Create a SliderPlot instance.

The plot is returned in a QFrame widget.

Parameters:
  • xvals (list) – the x values to plot
  • yvals (list) – y series to plot, should be the same length as xvals
  • size (tuple) – (x, y) plot size in pixels
  • x_label (str) – X-axis label
  • y_label (str) – Y-axis label
  • x_range (tuple) – (min, max) values for the X-axis, default is to show all values
  • y_range (tuple) – (min, max) values for the Y-axis, default is to show all values
  • color (str) – color for the line plot - this is overridden by cvals if cvals is given.
  • cvals (list, tuple or str) – For scatterplots, either a list or tuple of color values for every point, or a string to set a single color for all points. Do not use an RGB list or tuple to set a single color for all points, as that will be interpreted as intended to set individual colors for 3 (or 4 for RGBA) points. This overrides the value of color, and is not used for line plots, only scatter plots. If not given, the value of color is used.
  • bg (str) – color name for the plot background. See marker:color for some color names.
  • title (str) – the title of the plot
  • chart_type (str) – ‘line’ if the chart is a line plot (default), ‘scatter’ if the chart is scatterplot
  • shade_color (str) – A matplotlib-recognized color string that the unselected areas will be shaded
  • hslider_color (str) – A matplotlib-recognized color string that the horizontal sliders will be colored
  • vslider_color (str) – A matplotlib-recognized color string that the vertical sliders will be colored
  • slider_thickness (int) – Linewidth of the slider lines
  • slider_pick_tolerance (int) – Number of pixels the mouse click can be off and still grab the slider
  • slider_moved_callback (callable) – Called when one of the slider lines has been moved. The callback will receive the SlidableLine object that was moved.
  • marker (tuple) –

    tuple of (symbol, color, size), only used for scatter plots

    • symbol (1-character str)
    • s - square (‘square’, rectangle accepted)
    • o - circle (‘circle’ accepted)
    • ^ - triangle up (‘arrow’ accepted)
    • > - triangle right
    • < - triangle left
    • v - triangle down
    • d - diamond (‘diamond’ accepted)
    • p - pentagon
    • h - hexagon
    • 8 - octagon
        • plus (‘cross’ accepted)
    • x - x
  • marker_size (int) – size of the marker
  • fontsize (int or str) – size in points, or one of the following - - xx-small - x-small - small - medium - large - x-large - xx-large
  • use_hsliders (bool) – horizontal slider is enabled, if True
  • xstart – left percentage margin of the figure
  • xextent (float of None) – if float, right percentage margin of the figure
Xstart:

float

Return type:

QFrame

Returns:

The QFrame widget that contains the plot

replot()

Replot the chart with the current settings

removeColorsForMissingPoints()

Remove any colors for points that are missing X or Y data (X or Y = None) from the list of original values. Does nothing if the point colors are not a list or tuple.

setCVals(cvals)

Set the color values for scatterplot points and replot

Parameters:cvals (list, tuple or str) – Either a list or tuple of color values for every point, or a string to set a single color for all points. Do not use an RGB list or tuple to set a single color for all points, as that will be interpreted as intended to set individual colors for 3 (or 4 for RGBA) points.
removeMissingPoints()

Remove any points that are missing X or Y data (X or Y = None) from the list of original values

Return type:tuple
Returns:tuple of (x-values, y-values) where each item is a list of values. Any point for which x-value or y-value is None has been removed.
setXY(xvals, yvals, x_range=None, y_range=None, replot=True)

Change the X and Y values of the plot

Parameters:
  • xvals (list) – the x values to plot
  • yvals (list) – y series to plot, should be the same length as xvals
  • x_range (tuple) – (min, max) values for the X-axis, default is to show all values
  • y_range (tuple) – (min, max) values for the Y-axis, default is to show all values
  • replot (bool) – True of plot should be redrawn (default), False if not. False can be used if a subsequent setY is required.
setX(xvals, x_range=None, replot=True, reset_yrange=False)

Change the X values of the plot

Parameters:
  • xvals (list) – the x values to plot
  • x_range (tuple) – (min, max) values for the X-axis, default is to show all values
  • replot (bool) – True of plot should be redrawn (default), False if not. False can be used if a subsequent setY is required.
  • reset_yrange (bool) – True if the y_range should be reset, False (default) if not. It is useful to reset this if the number of datapoints is changing.
setY(yvals, y_range=None, replot=True, reset_xrange=False)

Change the Y values of the plot

Parameters:
  • yvals (list) – the y values to plot
  • y_range (tuple) – (min, max) values for the Y-axis, default is to show all values
  • replot (bool) – True of plot should be redrawn (default), False if not. False can be used if a subsequent setY is required.
  • reset_xrange (bool) – True if the y_range should be reset, False (default) if not. It is useful to reset this if the number of datapoints is changing.
getHSliderMin()

Get the current value of the minimum horizontal slider line in plot data units

Return type:float or -INF
Returns:The current value of the minimum horizontal slider, if in use
getHSliderMax()

Get the current value of the maximum horizontal slider line in plot data units

Return type:float or INF
Returns:The current value of the maximum horizontal slider, if in use
getVSliderMin()

Get the current value of the minimum vertical slider line in plot data units

Return type:float
Returns:The current value of the minimum vertical slider
getVSliderMax()

Get the current value of the maximum vertical slider line in plot data units

Return type:float
Returns:The current value of the maximum vertical slider
getSelectedIndexes()

Get the index in the x-value list of points that are contained within the slider lines.

Return type:list
Returns:index in the x-value list of points that are within the box bounded by the slider lines.
getSelectedXY()

Get the set of (x, y) points that are contained within the slider lines

Return type:list
Returns:(x, y) data points that are within the box bounded by the slider lines
getSelectedX()

Get the set of x values for all points that are contained within the slider lines.

Return type:list
Returns:x values of data points that are within the box bounded by the slider lines
Box = 1
DrawChildren = 2
DrawWindowBackground = 1
HLine = 4
IgnoreMask = 4
NoFrame = 0
class PaintDeviceMetric

Bases: int

__init__

Initialize self. See help(type(self)) for accurate signature.

bit_length() → int

Number of bits necessary to represent self in binary. >>> bin(37) ‘0b100101’ >>> (37).bit_length() 6

conjugate()

Returns self, the complex conjugate of any int.

denominator

the denominator of a rational number in lowest terms

from_bytes(bytes, byteorder, *, signed=False) → int

Return the integer represented by the given array of bytes.

The bytes argument must be a bytes-like object (e.g. bytes or bytearray).

The byteorder argument determines the byte order used to represent the integer. If byteorder is ‘big’, the most significant byte is at the beginning of the byte array. If byteorder is ‘little’, the most significant byte is at the end of the byte array. To request the native byte order of the host system, use `sys.byteorder’ as the byte order value.

The signed keyword-only argument indicates whether two’s complement is used to represent the integer.

imag

the imaginary part of a complex number

numerator

the numerator of a rational number in lowest terms

real

the real part of a complex number

to_bytes(length, byteorder, *, signed=False) → bytes

Return an array of bytes representing an integer.

The integer is represented using length bytes. An OverflowError is raised if the integer is not representable with the given number of bytes.

The byteorder argument determines the byte order used to represent the integer. If byteorder is ‘big’, the most significant byte is at the beginning of the byte array. If byteorder is ‘little’, the most significant byte is at the end of the byte array. To request the native byte order of the host system, use `sys.byteorder’ as the byte order value.

The signed keyword-only argument determines whether two’s complement is used to represent the integer. If signed is False and a negative integer is given, an OverflowError is raised.

Panel = 2
PdmDepth = 6
PdmDevicePixelRatio = 11
PdmDevicePixelRatioScaled = 12
PdmDpiX = 7
PdmDpiY = 8
PdmHeight = 2
PdmHeightMM = 4
PdmNumColors = 5
PdmPhysicalDpiX = 9
PdmPhysicalDpiY = 10
PdmWidth = 1
PdmWidthMM = 3
Plain = 16
Raised = 32
class RenderFlag

Bases: int

__init__

Initialize self. See help(type(self)) for accurate signature.

bit_length() → int

Number of bits necessary to represent self in binary. >>> bin(37) ‘0b100101’ >>> (37).bit_length() 6

conjugate()

Returns self, the complex conjugate of any int.

denominator

the denominator of a rational number in lowest terms

from_bytes(bytes, byteorder, *, signed=False) → int

Return the integer represented by the given array of bytes.

The bytes argument must be a bytes-like object (e.g. bytes or bytearray).

The byteorder argument determines the byte order used to represent the integer. If byteorder is ‘big’, the most significant byte is at the beginning of the byte array. If byteorder is ‘little’, the most significant byte is at the end of the byte array. To request the native byte order of the host system, use `sys.byteorder’ as the byte order value.

The signed keyword-only argument indicates whether two’s complement is used to represent the integer.

imag

the imaginary part of a complex number

numerator

the numerator of a rational number in lowest terms

real

the real part of a complex number

to_bytes(length, byteorder, *, signed=False) → bytes

Return an array of bytes representing an integer.

The integer is represented using length bytes. An OverflowError is raised if the integer is not representable with the given number of bytes.

The byteorder argument determines the byte order used to represent the integer. If byteorder is ‘big’, the most significant byte is at the beginning of the byte array. If byteorder is ‘little’, the most significant byte is at the end of the byte array. To request the native byte order of the host system, use `sys.byteorder’ as the byte order value.

The signed keyword-only argument determines whether two’s complement is used to represent the integer. If signed is False and a negative integer is given, an OverflowError is raised.

class RenderFlags

Bases: sip.simplewrapper

QWidget.RenderFlags(Union[QWidget.RenderFlags, QWidget.RenderFlag]) QWidget.RenderFlags(QWidget.RenderFlags)

__init__

Initialize self. See help(type(self)) for accurate signature.

class Shadow

Bases: int

__init__

Initialize self. See help(type(self)) for accurate signature.

bit_length() → int

Number of bits necessary to represent self in binary. >>> bin(37) ‘0b100101’ >>> (37).bit_length() 6

conjugate()

Returns self, the complex conjugate of any int.

denominator

the denominator of a rational number in lowest terms

from_bytes(bytes, byteorder, *, signed=False) → int

Return the integer represented by the given array of bytes.

The bytes argument must be a bytes-like object (e.g. bytes or bytearray).

The byteorder argument determines the byte order used to represent the integer. If byteorder is ‘big’, the most significant byte is at the beginning of the byte array. If byteorder is ‘little’, the most significant byte is at the end of the byte array. To request the native byte order of the host system, use `sys.byteorder’ as the byte order value.

The signed keyword-only argument indicates whether two’s complement is used to represent the integer.

imag

the imaginary part of a complex number

numerator

the numerator of a rational number in lowest terms

real

the real part of a complex number

to_bytes(length, byteorder, *, signed=False) → bytes

Return an array of bytes representing an integer.

The integer is represented using length bytes. An OverflowError is raised if the integer is not representable with the given number of bytes.

The byteorder argument determines the byte order used to represent the integer. If byteorder is ‘big’, the most significant byte is at the beginning of the byte array. If byteorder is ‘little’, the most significant byte is at the end of the byte array. To request the native byte order of the host system, use `sys.byteorder’ as the byte order value.

The signed keyword-only argument determines whether two’s complement is used to represent the integer. If signed is False and a negative integer is given, an OverflowError is raised.

Shadow_Mask = 240
class Shape

Bases: int

__init__

Initialize self. See help(type(self)) for accurate signature.

bit_length() → int

Number of bits necessary to represent self in binary. >>> bin(37) ‘0b100101’ >>> (37).bit_length() 6

conjugate()

Returns self, the complex conjugate of any int.

denominator

the denominator of a rational number in lowest terms

from_bytes(bytes, byteorder, *, signed=False) → int

Return the integer represented by the given array of bytes.

The bytes argument must be a bytes-like object (e.g. bytes or bytearray).

The byteorder argument determines the byte order used to represent the integer. If byteorder is ‘big’, the most significant byte is at the beginning of the byte array. If byteorder is ‘little’, the most significant byte is at the end of the byte array. To request the native byte order of the host system, use `sys.byteorder’ as the byte order value.

The signed keyword-only argument indicates whether two’s complement is used to represent the integer.

imag

the imaginary part of a complex number

numerator

the numerator of a rational number in lowest terms

real

the real part of a complex number

to_bytes(length, byteorder, *, signed=False) → bytes

Return an array of bytes representing an integer.

The integer is represented using length bytes. An OverflowError is raised if the integer is not representable with the given number of bytes.

The byteorder argument determines the byte order used to represent the integer. If byteorder is ‘big’, the most significant byte is at the beginning of the byte array. If byteorder is ‘little’, the most significant byte is at the end of the byte array. To request the native byte order of the host system, use `sys.byteorder’ as the byte order value.

The signed keyword-only argument determines whether two’s complement is used to represent the integer. If signed is False and a negative integer is given, an OverflowError is raised.

Shape_Mask = 15
class StyleMask

Bases: int

__init__

Initialize self. See help(type(self)) for accurate signature.

bit_length() → int

Number of bits necessary to represent self in binary. >>> bin(37) ‘0b100101’ >>> (37).bit_length() 6

conjugate()

Returns self, the complex conjugate of any int.

denominator

the denominator of a rational number in lowest terms

from_bytes(bytes, byteorder, *, signed=False) → int

Return the integer represented by the given array of bytes.

The bytes argument must be a bytes-like object (e.g. bytes or bytearray).

The byteorder argument determines the byte order used to represent the integer. If byteorder is ‘big’, the most significant byte is at the beginning of the byte array. If byteorder is ‘little’, the most significant byte is at the end of the byte array. To request the native byte order of the host system, use `sys.byteorder’ as the byte order value.

The signed keyword-only argument indicates whether two’s complement is used to represent the integer.

imag

the imaginary part of a complex number

numerator

the numerator of a rational number in lowest terms

real

the real part of a complex number

to_bytes(length, byteorder, *, signed=False) → bytes

Return an array of bytes representing an integer.

The integer is represented using length bytes. An OverflowError is raised if the integer is not representable with the given number of bytes.

The byteorder argument determines the byte order used to represent the integer. If byteorder is ‘big’, the most significant byte is at the beginning of the byte array. If byteorder is ‘little’, the most significant byte is at the end of the byte array. To request the native byte order of the host system, use `sys.byteorder’ as the byte order value.

The signed keyword-only argument determines whether two’s complement is used to represent the integer. If signed is False and a negative integer is given, an OverflowError is raised.

StyledPanel = 6
Sunken = 48
VLine = 5
WinPanel = 3
acceptDrops(self) → bool
accessibleDescription(self) → str
accessibleName(self) → str
actionEvent(self, QActionEvent)
actions(self) → List[QAction]
activateWindow(self)
addAction(self, QAction)
addActions(self, object)
adjustSize(self)
autoFillBackground(self) → bool
backgroundRole(self) → QPalette.ColorRole
baseSize(self) → QSize
blockSignals(self, bool) → bool
changeEvent(self, QEvent)
childAt(self, QPoint) → QWidget

childAt(self, int, int) -> QWidget

childEvent(self, QChildEvent)
children(self) → object
childrenRect(self) → QRect
childrenRegion(self) → QRegion
clearFocus(self)
clearMask(self)
close(self) → bool
closeEvent(self, QCloseEvent)
colorCount(self) → int
connectNotify(self, QMetaMethod)
contentsMargins(self) → QMargins
contentsRect(self) → QRect
contextMenuEvent(self, QContextMenuEvent)
contextMenuPolicy(self) → Qt.ContextMenuPolicy
create(self, window: sip.voidptr = 0, initializeWindow: bool = True, destroyOldWindow: bool = True)
createWindowContainer(QWindow, parent: QWidget = None, flags: Union[Qt.WindowFlags, Qt.WindowType] = 0) → QWidget
cursor(self) → QCursor
customContextMenuRequested

customContextMenuRequested(self, QPoint) [signal]

customEvent(self, QEvent)
deleteLater(self)
depth(self) → int
destroy(self, destroyWindow: bool = True, destroySubWindows: bool = True)
destroyed

destroyed(self, QObject = None) [signal]

devType(self) → int
devicePixelRatio(self) → int
devicePixelRatioF(self) → float
devicePixelRatioFScale() → float
disconnect(self)
disconnectNotify(self, QMetaMethod)
dragEnterEvent(self, QDragEnterEvent)
dragLeaveEvent(self, QDragLeaveEvent)
dragMoveEvent(self, QDragMoveEvent)
drawFrame(self, QPainter)
dropEvent(self, QDropEvent)
dumpObjectInfo(self)
dumpObjectTree(self)
dynamicPropertyNames(self) → object
effectiveWinId(self) → sip.voidptr
ensurePolished(self)
enterEvent(self, QEvent)
event(self, QEvent) → bool
eventFilter(self, QObject, QEvent) → bool
find(sip.voidptr) → QWidget
findChild(self, type, name: str = '', options: Union[Qt.FindChildOptions, Qt.FindChildOption] = Qt.FindChildrenRecursively) → QObject

findChild(self, Tuple, name: str = ‘’, options: Union[Qt.FindChildOptions, Qt.FindChildOption] = Qt.FindChildrenRecursively) -> QObject

findChildren(self, type, name: str = '', options: Union[Qt.FindChildOptions, Qt.FindChildOption] = Qt.FindChildrenRecursively) → List[QObject]

findChildren(self, Tuple, name: str = ‘’, options: Union[Qt.FindChildOptions, Qt.FindChildOption] = Qt.FindChildrenRecursively) -> List[QObject] findChildren(self, type, QRegExp, options: Union[Qt.FindChildOptions, Qt.FindChildOption] = Qt.FindChildrenRecursively) -> List[QObject] findChildren(self, Tuple, QRegExp, options: Union[Qt.FindChildOptions, Qt.FindChildOption] = Qt.FindChildrenRecursively) -> List[QObject] findChildren(self, type, QRegularExpression, options: Union[Qt.FindChildOptions, Qt.FindChildOption] = Qt.FindChildrenRecursively) -> List[QObject] findChildren(self, Tuple, QRegularExpression, options: Union[Qt.FindChildOptions, Qt.FindChildOption] = Qt.FindChildrenRecursively) -> List[QObject]

focusInEvent(self, QFocusEvent)
focusNextChild(self) → bool
focusNextPrevChild(self, bool) → bool
focusOutEvent(self, QFocusEvent)
focusPolicy(self) → Qt.FocusPolicy
focusPreviousChild(self) → bool
focusProxy(self) → QWidget
focusWidget(self) → QWidget
font(self) → QFont
fontInfo(self) → QFontInfo
fontMetrics(self) → QFontMetrics
foregroundRole(self) → QPalette.ColorRole
frameGeometry(self) → QRect
frameRect(self) → QRect
frameShadow(self) → QFrame.Shadow
frameShape(self) → QFrame.Shape
frameSize(self) → QSize
frameStyle(self) → int
frameWidth(self) → int
geometry(self) → QRect
getContentsMargins(self) → Tuple[int, int, int, int]
grab(self, rectangle: QRect = QRect(QPoint(0, 0), QSize(-1, -1))) → QPixmap
grabGesture(self, Qt.GestureType, flags: Union[Qt.GestureFlags, Qt.GestureFlag] = Qt.GestureFlags())
grabKeyboard(self)
grabMouse(self)

grabMouse(self, Union[QCursor, Qt.CursorShape])

grabShortcut(self, Union[QKeySequence, QKeySequence.StandardKey, str, int], context: Qt.ShortcutContext = Qt.WindowShortcut) → int
graphicsEffect(self) → QGraphicsEffect
graphicsProxyWidget(self) → QGraphicsProxyWidget
hasFocus(self) → bool
hasHeightForWidth(self) → bool
hasMouseTracking(self) → bool
hasTabletTracking(self) → bool
height(self) → int
heightForWidth(self, int) → int
heightMM(self) → int
hide(self)
hideEvent(self, QHideEvent)
inherits(self, str) → bool
initPainter(self, QPainter)
initStyleOption(self, QStyleOptionFrame)
inputMethodEvent(self, QInputMethodEvent)
inputMethodHints(self) → Qt.InputMethodHints
inputMethodQuery(self, Qt.InputMethodQuery) → Any
insertAction(self, QAction, QAction)
insertActions(self, QAction, Iterable[QAction])
installEventFilter(self, QObject)
isActiveWindow(self) → bool
isAncestorOf(self, QWidget) → bool
isEnabled(self) → bool
isEnabledTo(self, QWidget) → bool
isFullScreen(self) → bool
isHidden(self) → bool
isLeftToRight(self) → bool
isMaximized(self) → bool
isMinimized(self) → bool
isModal(self) → bool
isRightToLeft(self) → bool
isSignalConnected(self, QMetaMethod) → bool
isVisible(self) → bool
isVisibleTo(self, QWidget) → bool
isWidgetType(self) → bool
isWindow(self) → bool
isWindowModified(self) → bool
isWindowType(self) → bool
keyPressEvent(self, QKeyEvent)
keyReleaseEvent(self, QKeyEvent)
keyboardGrabber() → QWidget
killTimer(self, int)
layout(self) → QLayout
layoutDirection(self) → Qt.LayoutDirection
leaveEvent(self, QEvent)
lineWidth(self) → int
locale(self) → QLocale
logicalDpiX(self) → int
logicalDpiY(self) → int
lower(self)
mapFrom(self, QWidget, QPoint) → QPoint
mapFromGlobal(self, QPoint) → QPoint
mapFromParent(self, QPoint) → QPoint
mapTo(self, QWidget, QPoint) → QPoint
mapToGlobal(self, QPoint) → QPoint
mapToParent(self, QPoint) → QPoint
mask(self) → QRegion
maximumHeight(self) → int
maximumSize(self) → QSize
maximumWidth(self) → int
metaObject(self) → QMetaObject
metric(self, QPaintDevice.PaintDeviceMetric) → int
midLineWidth(self) → int
minimumHeight(self) → int
minimumSize(self) → QSize
minimumSizeHint(self) → QSize
minimumWidth(self) → int
mouseDoubleClickEvent(self, QMouseEvent)
mouseGrabber() → QWidget
mouseMoveEvent(self, QMouseEvent)
mousePressEvent(self, QMouseEvent)
mouseReleaseEvent(self, QMouseEvent)
move(self, QPoint)

move(self, int, int)

moveEvent(self, QMoveEvent)
moveToThread(self, QThread)
nativeEvent(self, Union[QByteArray, bytes, bytearray], sip.voidptr) → Tuple[bool, int]
nativeParentWidget(self) → QWidget
nextInFocusChain(self) → QWidget
normalGeometry(self) → QRect
objectName(self) → str
objectNameChanged

objectNameChanged(self, str) [signal]

overrideWindowFlags(self, Union[Qt.WindowFlags, Qt.WindowType])
overrideWindowState(self, Union[Qt.WindowStates, Qt.WindowState])
paintEngine(self) → QPaintEngine
paintEvent(self, QPaintEvent)
paintingActive(self) → bool
palette(self) → QPalette
parent(self) → QObject
parentWidget(self) → QWidget
physicalDpiX(self) → int
physicalDpiY(self) → int
pos(self) → QPoint
previousInFocusChain(self) → QWidget
property(self, str) → Any
pyqtConfigure(...)

Each keyword argument is either the name of a Qt property or a Qt signal. For properties the property is set to the given value which should be of an appropriate type. For signals the signal is connected to the given value which should be a callable.

raise_(self)
receivers(self, PYQT_SIGNAL) → int
rect(self) → QRect
releaseKeyboard(self)
releaseMouse(self)
releaseShortcut(self, int)
removeAction(self, QAction)
removeEventFilter(self, QObject)
render(self, QPaintDevice, targetOffset: QPoint = QPoint(), sourceRegion: QRegion = QRegion(), flags: Union[QWidget.RenderFlags, QWidget.RenderFlag] = QWidget.RenderFlags(QWidget.DrawWindowBackground|QWidget.DrawChildren))

render(self, QPainter, targetOffset: QPoint = QPoint(), sourceRegion: QRegion = QRegion(), flags: Union[QWidget.RenderFlags, QWidget.RenderFlag] = QWidget.RenderFlags(QWidget.DrawWindowBackground|QWidget.DrawChildren))

repaint(self)

repaint(self, int, int, int, int) repaint(self, QRect) repaint(self, QRegion)

resize(self, QSize)

resize(self, int, int)

resizeEvent(self, QResizeEvent)
restoreGeometry(self, Union[QByteArray, bytes, bytearray]) → bool
saveGeometry(self) → QByteArray
scroll(self, int, int)

scroll(self, int, int, QRect)

sender(self) → QObject
senderSignalIndex(self) → int
setAcceptDrops(self, bool)
setAccessibleDescription(self, str)
setAccessibleName(self, str)
setAttribute(self, Qt.WidgetAttribute, on: bool = True)
setAutoFillBackground(self, bool)
setBackgroundRole(self, QPalette.ColorRole)
setBaseSize(self, int, int)

setBaseSize(self, QSize)

setContentsMargins(self, int, int, int, int)

setContentsMargins(self, QMargins)

setContextMenuPolicy(self, Qt.ContextMenuPolicy)
setCursor(self, Union[QCursor, Qt.CursorShape])
setDisabled(self, bool)
setEnabled(self, bool)
setFixedHeight(self, int)
setFixedSize(self, QSize)

setFixedSize(self, int, int)

setFixedWidth(self, int)
setFocus(self)

setFocus(self, Qt.FocusReason)

setFocusPolicy(self, Qt.FocusPolicy)
setFocusProxy(self, QWidget)
setFont(self, QFont)
setForegroundRole(self, QPalette.ColorRole)
setFrameRect(self, QRect)
setFrameShadow(self, QFrame.Shadow)
setFrameShape(self, QFrame.Shape)
setFrameStyle(self, int)
setGeometry(self, QRect)

setGeometry(self, int, int, int, int)

setGraphicsEffect(self, QGraphicsEffect)
setHidden(self, bool)
setInputMethodHints(self, Union[Qt.InputMethodHints, Qt.InputMethodHint])
setLayout(self, QLayout)
setLayoutDirection(self, Qt.LayoutDirection)
setLineWidth(self, int)
setLocale(self, QLocale)
setMask(self, QBitmap)

setMask(self, QRegion)

setMaximumHeight(self, int)
setMaximumSize(self, int, int)

setMaximumSize(self, QSize)

setMaximumWidth(self, int)
setMidLineWidth(self, int)
setMinimumHeight(self, int)
setMinimumSize(self, int, int)

setMinimumSize(self, QSize)

setMinimumWidth(self, int)
setMouseTracking(self, bool)
setObjectName(self, str)
setPalette(self, QPalette)
setParent(self, QWidget)

setParent(self, QWidget, Union[Qt.WindowFlags, Qt.WindowType])

setProperty(self, str, Any) → bool
setShortcutAutoRepeat(self, int, enabled: bool = True)
setShortcutEnabled(self, int, enabled: bool = True)
setSizeIncrement(self, int, int)

setSizeIncrement(self, QSize)

setSizePolicy(self, QSizePolicy)

setSizePolicy(self, QSizePolicy.Policy, QSizePolicy.Policy)

setStatusTip(self, str)
setStyle(self, QStyle)
setStyleSheet(self, str)
setTabOrder(QWidget, QWidget)
setTabletTracking(self, bool)
setToolTip(self, str)
setToolTipDuration(self, int)
setUpdatesEnabled(self, bool)
setVisible(self, bool)
setWhatsThis(self, str)
setWindowFilePath(self, str)
setWindowFlag(self, Qt.WindowType, on: bool = True)
setWindowFlags(self, Union[Qt.WindowFlags, Qt.WindowType])
setWindowIcon(self, QIcon)
setWindowIconText(self, str)
setWindowModality(self, Qt.WindowModality)
setWindowModified(self, bool)
setWindowOpacity(self, float)
setWindowRole(self, str)
setWindowState(self, Union[Qt.WindowStates, Qt.WindowState])
setWindowTitle(self, str)
sharedPainter(self) → QPainter
show(self)
showEvent(self, QShowEvent)
showFullScreen(self)
showMaximized(self)
showMinimized(self)
showNormal(self)
signalsBlocked(self) → bool
size(self) → QSize
sizeHint(self) → QSize
sizeIncrement(self) → QSize
sizePolicy(self) → QSizePolicy
stackUnder(self, QWidget)
startTimer(self, int, timerType: Qt.TimerType = Qt.CoarseTimer) → int
staticMetaObject = <PyQt5.QtCore.QMetaObject object>
statusTip(self) → str
style(self) → QStyle
styleSheet(self) → str
tabletEvent(self, QTabletEvent)
testAttribute(self, Qt.WidgetAttribute) → bool
thread(self) → QThread
timerEvent(self, QTimerEvent)
toolTip(self) → str
toolTipDuration(self) → int
tr(self, str, disambiguation: str = None, n: int = -1) → str
underMouse(self) → bool
ungrabGesture(self, Qt.GestureType)
unsetCursor(self)
unsetLayoutDirection(self)
unsetLocale(self)
update(self)

update(self, QRect) update(self, QRegion) update(self, int, int, int, int)

updateGeometry(self)
updateMicroFocus(self)
updatesEnabled(self) → bool
visibleRegion(self) → QRegion
whatsThis(self) → str
wheelEvent(self, QWheelEvent)
width(self) → int
widthMM(self) → int
winId(self) → sip.voidptr
window(self) → QWidget
windowFilePath(self) → str
windowFlags(self) → Qt.WindowFlags
windowHandle(self) → QWindow
windowIcon(self) → QIcon
windowIconChanged

windowIconChanged(self, QIcon) [signal]

windowIconText(self) → str
windowIconTextChanged

windowIconTextChanged(self, str) [signal]

windowModality(self) → Qt.WindowModality
windowOpacity(self) → float
windowRole(self) → str
windowState(self) → Qt.WindowStates
windowTitle(self) → str
windowTitleChanged

windowTitleChanged(self, str) [signal]

windowType(self) → Qt.WindowType
x(self) → int
y(self) → int
class schrodinger.application.bioluminate.sliderchart.SlidableLine(parent, axes, line, tolerance=7, border='high', shade_color='0.70', callback=None)

Bases: object

A line on a matplotlib plot that can be grabbed and moved by the user

__init__(parent, axes, line, tolerance=7, border='high', shade_color='0.70', callback=None)

Create a SlidableLine object

Parameters:
  • parent (SliderPlot object) – The matplotlib canvas these lines are plotted on
  • axes (matplotlib Axes object) – The matplotlib axes these lines are plotted on
  • line (matplotlib Line2D object) – the actual line that will be moved
  • tolerance (int) – The amount that the user can “miss” the line and still grab it
  • border (str) – either “high” or “low”, the role this line plays in bounding the box - high lines are those that bound the upper value of X or Y
  • shade_color (str) – A matplotlib-recognized color string that the unselected areas will be shaded
  • callback (callable) – Called when the slider line has been moved. The callback will receive the SlidableLine object that was moved.
onRelease(event)

Stop checking for movement when the mouse button is released

remove()

Remove this from the plot

class schrodinger.application.bioluminate.sliderchart.SlidableHLine(*args, **kwargs)

Bases: schrodinger.application.bioluminate.sliderchart.SlidableLine

A horizontal line on a matplotlib plot that can be grabbed and moved by the user

__init__(*args, **kwargs)

Create a SlidableHLine object

See parent class for argument documentation

getPosition()

Return the position of the line in data coordinates

Return type:float
Returns:The current position of the line in data coordinates
getAxisExtreme()

Return the most extreme (high or low) value this line should take

Return type:float
Returns:The most extreme value this line can take in data coordinates
setPosition(value)

Change the position of the line to value. However, we don’t allow the high/low boundary lines to cross, or to go off the plot.

Parameters:value (float) – The new y value to attempt to place the line at
onMotion(event)

Move the line if it is currently moving and the mouse moved

Parameters:event (matplotlib mouse event) – the event object generated by mouse movement
onPress(event)

Check to see if the user clicked this line

Parameters:event (matplotlib mouse event) – the event object generated by mouse click
onRelease(event)

Stop checking for movement when the mouse button is released

remove()

Remove this from the plot

class schrodinger.application.bioluminate.sliderchart.SlidableVLine(*args, **kwargs)

Bases: schrodinger.application.bioluminate.sliderchart.SlidableLine

A vertical line on a matplotlib plot that can be grabbed and moved by the user

__init__(*args, **kwargs)

Create a SlidableVLine object

See parent class for argument documentation

getPosition()

Return the position of the line in data coordinates

Return type:float
Returns:The current position of the line in data coordinates
setPosition(value)

Change the position of the line to value. However, we don’t allow the high/low boundary lines to cross, or to go off the plot.

Parameters:value (float) – The new x value to attempt to place the line at
getAxisExtreme()

Return the most extreme (high or low) value this line should take

Return type:float
Returns:The most extreme value this line can take in data coordinates
onMotion(event)

Move the line if it is currently moving and the mouse moved

Parameters:event (matplotlib mouse event) – the event object generated by mouse movement
onPress(event)

Check to see if the user clicked this line

Parameters:event (matplotlib mouse event) – the event object generated by mouse click
onRelease(event)

Stop checking for movement when the mouse button is released

remove()

Remove this from the plot