Productivity Tools for Plotly + Pandas

Overview

Cufflinks

This library binds the power of plotly with the flexibility of pandas for easy plotting.

This library is available on https://github.com/santosjorge/cufflinks

This tutorial assumes that the plotly user credentials have already been configured as stated on the getting started guide.

Tutorials:

3D Charts

Release Notes

v0.17.0

Support for Plotly 4.x
Cufflinks is no longer compatible with Plotly 3.x

v0.14.0

Support for Plotly 3.0

v0.13.0

New iplot helper. To see a comprehensive list of parameters cf.help()

# For a list of supported figures
cf.help()
# Or to see the parameters supported that apply to a given figure try
cf.help('scatter')
cf.help('candle') #etc

v0.12.0

Removed dependecies on ta-lib. This library is no longer required. All studies have be rewritten in Python.

v0.11.0

  • QuantFigure is a new class that will generate a graph object with persistence. Parameters can be added/modified at any given point.

This can be as easy as:

df=cf.datagen.ohlc()
qf=cf.QuantFig(df,title='First Quant Figure',legend='top',name='GS')
qf.add_bollinger_bands()
qf.iplot()

QuantFigure

  • Technical Analysis Studies can be added on demand.
qf.add_sma([10,20],width=2,color=['green','lightgreen'],legendgroup=True)
qf.add_rsi(periods=20,color='java')
qf.add_bollinger_bands(periods=20,boll_std=2,colors=['magenta','grey'],fill=True)
qf.add_volume()
qf.add_macd()
qf.iplot()

Technical Analysis

v0.10.0

  • rangeslider to display a date range slider at the bottom
    • cf.datagen.ohlc().iplot(kind='candle',rangeslider=True)
  • rangeselector to display buttons to change the date range displayed
    • cf.datagen.ohlc(500).iplot(kind='candle', rangeselector={ 'steps':['1y','2 months','5 weeks','ytd','2mtd','reset'], 'bgcolor' : ('grey',.3), 'x': 0.3 , 'y' : 0.95})
  • Customise annotions, with fontsize,fontcolor,textangle
    • Label mode
      • cf.datagen.lines(1,mode='stocks').iplot(kind='line', annotations={'2015-02-02':'Market Crash', '2015-03-01':'Recovery'}, textangle=-70,fontsize=13,fontcolor='grey')
    • Explicit mode
      • cf.datagen.lines(1,mode='stocks').iplot(kind='line', annotations=[{'text':'exactly here','x':'0.2', 'xref':'paper','arrowhead':2, 'textangle':-10,'ay':150,'arrowcolor':'red'}])

v0.9.0

  • Figure.iplot() to plot figures
  • New high performing candle and ohlc plots
    • cf.datagen.ohlc().iplot(kind='candle')

v0.8.0

  • 'cf.datagen.choropleth()' to for sample choropleth data.
  • 'cf.datagen.scattergeo()' to for sample scattergeo data.
  • Support for choropleth and scattergeo figures in iplot
  • 'cf.get_colorscale' for maps and plotly objects that support colorscales

v0.7.1

  • xrange, yrange and zrange can be specified in iplot and getLayout
    • cf.datagen.lines(1).iplot(yrange=[5,15])
  • layout_update can be set in iplot and getLayout to explicitly update any Layout value

v0.7

  • Support for Python 3

v0.6

See the IPython Notebook

  • Support for pie charts
    • cf.datagen.pie().iplot(kind='pie',labels='labels',values='values')
  • Generate Open, High, Low, Close data
    • datagen.ohlc()
  • Candle Charts support
    • ohlc=cf.datagen.ohlc()
      ohlc.iplot(kind='candle',up_color='blue',down_color='red')
  • OHLC (Bar) Charts support
    • ohlc=cf.datagen.ohlc()
      ohlc.iplot(kind='ohlc',up_color='blue',down_color='red')
  • Support for logarithmic charts ( logx | logy )
    • df=pd.DataFrame([x**2] for x in range(100))
      df.iplot(kind='lines',logy=True)
  • Support for MulitIndex DataFrames
  • Support for Error Bars ( error_x | error_y )
    • cf.datagen.lines(1,5).iplot(kind='bar',error_y=[1,2,3.5,2,2])
    • cf.datagen.lines(1,5).iplot(kind='bar',error_y=20, error_type='percent')
  • Support for continuous error bars
    • cf.datagen.lines(1).iplot(kind='lines',error_y=20,error_type='continuous_percent')
    • cf.datagen.lines(1).iplot(kind='lines',error_y=10,error_type='continuous',color='blue')
  • Technical Analysis Studies for Timeseries (beta)
    • Simple Moving Averages (SMA)
      • cf.datagen.lines(1,500).ta_plot(study='sma',periods=[13,21,55])
    • Relative Strength Indicator (RSI)
      • cf.datagen.lines(1,200).ta_plot(study='boll',periods=14)
    • Bollinger Bands (BOLL)
      • cf.datagen.lines(1,200).ta_plot(study='rsi',periods=14)
    • Moving Average Convergence Divergence (MACD)
      • cf.datagen.lines(1,200).ta_plot(study='macd',fast_period=12,slow_period=26, signal_period=9)

v0.5

  • Support of offline charts
    • cf.go_offline()
    • cf.go_online()
    • cf.iplot(figure,online=True) (To force online whilst on offline mode)
  • Support for secondary axis
    • fig=cf.datagen.lines(3,columns=['a','b','c']).figure()
      fig=fig.set_axis('b',side='right')
      cf.iplot(fig)

v0.4

  • Support for global theme setting
    • cufflinks.set_config_file(theme='pearl')
  • New theme ggplot
    • cufflinks.datagen.lines(5).iplot(theme='ggplot')
  • Support for horizontal bar charts barh
    • cufflinks.datagen.lines(2).iplot(kind='barh',barmode='stack',bargap=.1)
  • Support for histogram orientation and normalization
    • cufflinks.datagen.histogram().iplot(kind='histogram',orientation='h',norm='probability')
  • Support for area plots
    • cufflinks.datagen.lines(4).iplot(kind='area',fill=True,opacity=1)
  • Support for subplots
    • cufflinks.datagen.histogram(4).iplot(kind='histogram',subplots=True,bins=50)
    • cufflinks.datagen.lines(4).iplot(subplots=True,shape=(4,1),shared_xaxes=True,vertical_spacing=.02,fill=True)
  • Support for scatter matrix to display the distribution amongst every series in the DataFrame
    • cufflinks.datagen.lines(4,1000).scatter_matrix()
  • Support for vline and hline for horizontal and vertical lines
    • cufflinks.datagen.lines(3).iplot(hline=[2,3])
    • cufflinks.datagen.lines(3).iplot(hline=dict(y=2,color='blue',width=3))
  • Support for vspan and hspan for horizontal and vertical areas
    • cufflinks.datagen.lines(3).iplot(hspan=(-1,2))
    • cufflinks.datagen.lines(3).iplot(hspan=dict(y0=-1,y1=2,color='orange',fill=True,opacity=.4))

v0.3.2

  • Global setting for public charts
    • cufflinks.set_config_file(world_readable=True)

v0.3

  • Enhanced Spread charts
    • cufflinks.datagen.lines(2).iplot(kind='spread')
  • Support for Heatmap charts
    • cufflinks.datagen.heatmap().iplot(kind='heatmap')
  • Support for Bubble charts
    • cufflinks.datagen.bubble(4).iplot(kind='bubble',x='x',y='y',text='text',size='size',categories='categories')
  • Support for Bubble3d charts
    • cufflinks.datagen.bubble3d(4).iplot(kind='bubble3d',x='x',y='y',z='z',text='text',size='size',categories='categories')
  • Support for Box charts
    • cufflinks.datagen.box().iplot(kind='box')
  • Support for Surface charts
    • cufflinks.datagen.surface().iplot(kind='surface')
  • Support for Scatter3d charts
    • cufflinks.datagen.scatter3d().iplot(kind='scatter3d',x='x',y='y',z='z',text='text',categories='categories')
  • Support for Histograms
    • cufflinks.datagen.histogram(2).iplot(kind='histogram')
  • Data generation for most common plot types
    • cufflinks.datagen
  • Data extraction: Extract data from any Plotly chart. Data is delivered in DataFrame
    • cufflinks.to_df(Figure)
  • Integration with colorlover
    • Support for scales iplot(colorscale='accent') to plot a chart using an accent color scale
    • cufflinks.scales() to see all available scales
  • Support for named colors * iplot(colors=['pink','red','yellow'])
Comments
  • plotly 3.0 causes warnings

    plotly 3.0 causes warnings

    When using the plotly 3.0, the below warnings show up after importing cufflinks. Would be good to update the code by avoiding the deprecated methods.

    /Users/gshalev/.pyenv/versions/3.6.2/lib/python3.6/site-packages/plotly/graph_objs/_deprecations.py:558: DeprecationWarning:
    
    plotly.graph_objs.YAxis is deprecated.
    Please replace it with one of the following more specific types
      - plotly.graph_objs.layout.YAxis
      - plotly.graph_objs.layout.scene.YAxis
    
    
    /Users/gshalev/.pyenv/versions/3.6.2/lib/python3.6/site-packages/plotly/graph_objs/_deprecations.py:531: DeprecationWarning:
    
    plotly.graph_objs.XAxis is deprecated.
    Please replace it with one of the following more specific types
      - plotly.graph_objs.layout.XAxis
      - plotly.graph_objs.layout.scene.XAxis
    
    opened by gideonshalev 51
  • ImportError: cannot import name 'FigureWidget'

    ImportError: cannot import name 'FigureWidget'

    I just cloned the new cufflinks version 0.14.0 which is supposed to be compatible with plotly. When trying to import cufflinks, I get the following error:

    Traceback (most recent call last):
      File "C:\Users\monar\Miniconda3\envs\athion-utils\lib\site-packages\IPython\core\interactiveshell.py", line 2961, in run_code
        exec(code_obj, self.user_global_ns, self.user_ns)
      File "<ipython-input-2-f6fce55a6101>", line 1, in <module>
        import cufflinks
      File "C:\Program Files\JetBrains\PyCharm Community Edition 2018.1.4\helpers\pydev\_pydev_bundle\pydev_import_hook.py", line 19, in do_import
        module = self._system_import(name, *args, **kwargs)
      File "C:\Users\monar\Miniconda3\envs\athion-utils\lib\site-packages\cufflinks\__init__.py", line 21, in <module>
        from .plotlytools import *
      File "C:\Program Files\JetBrains\PyCharm Community Edition 2018.1.4\helpers\pydev\_pydev_bundle\pydev_import_hook.py", line 19, in do_import
        module = self._system_import(name, *args, **kwargs)
      File "C:\Users\monar\Miniconda3\envs\athion-utils\lib\site-packages\cufflinks\plotlytools.py", line 6, in <module>
        from plotly.graph_objs import Figure, Bar, Box, Scatter, FigureWidget, Scatter3d, Histogram, Heatmap, Surface, Pie
    ImportError: cannot import name 'FigureWidget'
    

    My plotly version is 3.1.1.

    opened by mmrahn 18
  • Starting work on plotly 3.0.0 migration

    Starting work on plotly 3.0.0 migration

    this is just a first pass, theres some major work to do:

    • [x] 2 "FIXME TKP" sections were just commented out in plotlytools
    • [x] Docstrings and defaults are wrong in many cases (e.g. "horizontal"/"vertical" not valid, "dot" not a valid marker type)
    • [x] 3 "FIXME TKP" sections commented out in quant_figure
    • [x] Fix JupyterLab support
      • In plotlytools, replace calls to plot/iplot with return go.FigureWidget(data=figure['data'], layout=figure['layout']), not working currently for QuantFig
      • working on in https://github.com/plotly/plotly.py/issues/1071
    opened by timkpaine 16
  • cannot import name date_tools

    cannot import name date_tools

    Have updated plotly and cufflinks, but am getting this weird error I've never seen before.

    In [120]: import cufflinks
    ---------------------------------------------------------------------------
    ImportError                               Traceback (most recent call last)
    <ipython-input-120-727a8f30b326> in <module>()
    ----> 1 import cufflinks
    
    /usr/local/lib/python2.7/site-packages/cufflinks/__init__.py in <module>()
          9 from __future__ import absolute_import
         10
    ---> 11 from . import date_tools
         12 from . import utils
         13 from . import datagen
    
    ImportError: cannot import name date_tools
    

    And cufflinks installed:

    Requirement already up-to-date: cufflinks in /usr/local/lib/python2.7/site-packages
    Requirement already up-to-date: pandas in /usr/local/lib/python2.7/site-packages (from cufflinks)
    Requirement already up-to-date: plotly>=2.0.0 in /usr/local/lib/python2.7/site-packages (from cufflinks)
    Requirement already up-to-date: colorlover>=0.2 in /usr/local/lib/python2.7/site-packages (from cufflinks)
    Requirement already up-to-date: python-dateutil in /usr/local/lib/python2.7/site-packages (from pandas->cufflinks)
    Requirement already up-to-date: numpy>=1.7.0 in /usr/local/lib/python2.7/site-packages (from pandas->cufflinks)
    Requirement already up-to-date: pytz>=2011k in /usr/local/lib/python2.7/site-packages (from pandas->cufflinks)
    Requirement already up-to-date: six in /Users/chase.schwalbach/Library/Python/2.7/lib/python/site-packages (from plotly>=2.0.0->cufflinks)
    Requirement already up-to-date: nbformat>=4.2 in /usr/local/lib/python2.7/site-packages (from plotly>=2.0.0->cufflinks)
    Requirement already up-to-date: requests in /usr/local/lib/python2.7/site-packages (from plotly>=2.0.0->cufflinks)
    Requirement already up-to-date: decorator>=4.0.6 in /Users/chase.schwalbach/Library/Python/2.7/lib/python/site-packages (from plotly>=2.0.0->cufflinks)
    Requirement already up-to-date: jsonschema!=2.5.0,>=2.4 in /usr/local/lib/python2.7/site-packages (from nbformat>=4.2->plotly>=2.0.0->cufflinks)
    Requirement already up-to-date: ipython-genutils in /Users/chase.schwalbach/Library/Python/2.7/lib/python/site-packages (from nbformat>=4.2->plotly>=2.0.0->cufflinks)
    Requirement already up-to-date: jupyter-core in /usr/local/lib/python2.7/site-packages (from nbformat>=4.2->plotly>=2.0.0->cufflinks)
    Requirement already up-to-date: traitlets>=4.1 in /Users/chase.schwalbach/Library/Python/2.7/lib/python/site-packages (from nbformat>=4.2->plotly>=2.0.0->cufflinks)
    Requirement already up-to-date: certifi>=2017.4.17 in /usr/local/lib/python2.7/site-packages (from requests->plotly>=2.0.0->cufflinks)
    Requirement already up-to-date: chardet<3.1.0,>=3.0.2 in /usr/local/lib/python2.7/site-packages (from requests->plotly>=2.0.0->cufflinks)
    Requirement already up-to-date: urllib3<1.22,>=1.21.1 in /usr/local/lib/python2.7/site-packages (from requests->plotly>=2.0.0->cufflinks)
    Requirement already up-to-date: idna<2.6,>=2.5 in /usr/local/lib/python2.7/site-packages (from requests->plotly>=2.0.0->cufflinks)
    Requirement already up-to-date: functools32; python_version == "2.7" in /usr/local/lib/python2.7/site-packages (from jsonschema!=2.5.0,>=2.4->nbformat>=4.2->plotly>=2.0.0->cufflinks)
    Requirement already up-to-date: enum34; python_version == "2.7" in /Users/chase.schwalbach/Library/Python/2.7/lib/python/site-packages (from traitlets>=4.1->nbformat>=4.2->plotly>=2.0.0->cufflinks)
    

    macOS Sierra python 2.7.13

    opened by schwallie 14
  • Generate ohlc chart but get an attribute error?

    Generate ohlc chart but get an attribute error?

    Hi, I am new to cufflinks and want to generate an ohlc chart from yahoo finance data. I got an AttributeError: 'DataFrame' object has no attribute 'ix' in qf.iplot(). Any advice is highly appreciated! Thank you!

    `import pandas as pd import pandas_datareader.data as pdr import chart_studio.plotly as py import plotly.graph_objs as go from plotly.offline import iplot,init_notebook_mode import cufflinks as cf cf.go_offline(connected=True) init_notebook_mode(connected=True)

    Get data from yahoo and reanme the columns

    df = pdr.DataReader("gs", 'yahoo', datetime(2019, 1, 1), datetime(2019, 12, 28)) df.rename(columns={'High': 'high', 'Low': 'low', 'Open': 'open', 'Close': 'close','Volume': 'volume'}, inplace=True) df = df[['high','low','open','close','volume']]

    Generate the ohlc chart but with errors -> AttributeError: 'DataFrame' object has no attribute 'ix'

    df=cf.datagen.ohlc() qf=cf.QuantFig(df,title='First Quant Figure',legend='top',name='GS') qf.add_bollinger_bands() qf.iplot()`

    opened by steveycchen 10
  • No module named 'cufflinks'

    No module named 'cufflinks'

    I've installed plotly version 2.4.1 and cufflinks version 2.2.1 through conda. When importing cufflinks in Jupyter using

    import plotly
    import cufflinks as cf
    

    I get

    ModuleNotFoundError: No module named 'cufflinks'
    

    I'm running Ubuntu 16.04.

    opened by malapradej 10
  • AttributeError happened when invoking subplots in plotly >= 3.8.0

    AttributeError happened when invoking subplots in plotly >= 3.8.0

    When I used iplot() to draw subplots in offline like this, following AttributeError happened.

    import cufflinks as cf
    cf.go_offline()
    
    some_pandas_data.iplot(
      subplots=True,
      shape=(len(some_pandas_data.columns), 1),
      shared_xaxes=True
    )
    
    ~/envs/liu/lib/python3.7/site-packages/cufflinks/tools.py in get_subplots(rows, cols, shared_xaxes, shared_yaxes, start_cell, theme, base_layout, **kwargs)
        892 
        893         layout= base_layout if base_layout else getLayout(theme,**check_kwargs(kwargs,__LAYOUT_AXIS))
    --> 894 	sp=py.plotly.tools.make_subplots(rows=rows,cols=cols,shared_xaxes=shared_xaxes,
        895                                                                                    shared_yaxes=shared_yaxes,print_grid=False,
        896 											start_cell=start_cell,**kwargs)
    
    AttributeError: module 'chart_studio.tools' has no attribute 'make_subplots'
    

    Error only happened in case of plotly >= 3.8.0.

    I think it maybe caused by this change, but I'm not sure. Could anyone provide any information on this? Thanks! https://github.com/plotly/plotly.py/commit/3678aa925489b9ed429dc28863040dbb391dadb1

    opened by happylusa-liu 9
  • Modify import for plotly v4 and adding chart_studio dependency as recommended

    Modify import for plotly v4 and adding chart_studio dependency as recommended

    This is a fix that enables to import cufflinks without the error reported at #194 .

    Not sure how you want to handle the version upgrade for both cufflinks and plotly in the requirements.txt though

    opened by mazzma12 8
  • unable to pick up color when trying to set it from a dataframe

    unable to pick up color when trying to set it from a dataframe

    Hi there, I was trying to make cufflinks pick up color from a column and assign it to entry point when plotting i have been unsuccessful so far and have different behaviour like xaxis change its unit or color not properly changing the example below give more detail. Can any one look into it?

    Thanks

    exple:

    data = {
        'time': ['10:00:00.001001','10:00:00.020020','10:00:00.003030','10:00:00.040015','10:00:00.050025','10:00:00.060036'],
        'color': ['red','orange', 'blue', 'orange', 'orange', 'red'],
        'duration': ['0.01020642', '0.01332378', '0.01018166', '0.01882410', '0.01899997', '0.01169282']}
    
    df = pd.DataFrame.from_dict(data)
    
    df.time= pd.to_datetime(df.time,format='%H:%M:%S.%f')
    df.duration = df.duration.astype(float)
    
    df.iplot(kind='scatter', mode='markers', x='time', y='duration')
    
    screen shot 2019-03-03 at 2 09 06 am

    if i try to use categories to differentiate different color, it will messed up the xaxis df.iplot(kind='scatter', mode='markers', x='time', y='duration', categories='color') (i saw that there is a ticket fr that already

    now if i use the following:

    df.iplot(kind='scatter', mode='markers', x='time', y='duration',colors='color') I will get

    CufflinksError: Not a valid color: color

    now if use the column color to get the color i want using df.iplot(kind='scatter', mode='markers', x='time', y='duration',colors=df.color) i get

    ValueError: The truth value of a Series is ambiguous. Use a.empty, a.bool(), a.item(), a.any() or a.all().

    1. since color can take a a value or list I then use this df.iplot(kind='scatter', mode='markers', x='time', y='duration',colors=df.color.tolist()) i will get the image below
    screen shot 2019-03-03 at 2 23 36 am

    the color will changed to red (first dataframe entry) but will not iterate to the list and change other entry points to their respective color

    Am i doing something wrong or there is a way to achieve this (plot every single point in the dataframe with specific color)?

    opened by raggnar 8
  • Fix compatability with latest plotly and chart_studio

    Fix compatability with latest plotly and chart_studio

    @jorgesantostr I'm happy to help create the new release if you can give me write access to the github repo (i.e. add me as a collaborator), and write access to the PyPi package (i.e. add me as maintainer or owner of the PyPi package).

    A number of fixes were required to make cufflinks compatabile with the latest version of plotly, and the online chart_studio library (also from plotly).

    This seems to pass the nosetests, and I reran the jupyter notebooks to make sure they work. There is a weird FutureWarning from pandas in there, which seems to be related to numeric conversions. I couldn't track down where this is coming from, but see the .ptp FutureWarning in the notebooks for more. Seems to come from nanptp in Pandas.

    If this doesn't get merged (seems like activity has stalled on this repo this year), you can install this version with:

    git clone https://github.com/nateGeorge/cufflinks.git cd cufflinks python setup.py install

    Related to PR #202 , #195, and #198, as well as issues #196, #194, and probably more. Thanks to @eholic for the subplots fix.

    opened by nateGeorge 7
  • Annotations location

    Annotations location

    Accoring to http://nbviewer.jupyter.org/gist/santosjorge/f3b07b2be8094deea8c6

    " Annotations can be added to the chart and these are automatically positioned correctly. "

    Is it possible to set more attribution of the annotations like multiple-annotations in plotly ? https://plot.ly/python/text-and-annotations/#multiple-annotations

    Because the annotations can't positioned correctly sometimes 2016-07-31 11 52 39 2016-07-31 11 52 48

    opened by t0mst0ne 7
  • [BUG] Handling two columns with the same name on .iplot()

    [BUG] Handling two columns with the same name on .iplot()

    [cufflinks 0.17.3, plotly >= 4.1.1, used in VisualStudioCode notebooks]

    Reproduce

    To reproduce the bug, call .iplot() on a dataframe containing two columns with the same name

    Description

    The graph will appear very weird and not readable at all

    Proposed solution

    When two or more columns have the same name, automatically rename them "{x}_0", "{x}_1", or "{x} (0)", "{x} (1)"

    I can work on this myself if others find the issue problematic and the solution relevant.

    image

    opened by thomktz 0
  • Colorbar : Plotly vs Cufflinks Scatter Plot

    Colorbar : Plotly vs Cufflinks Scatter Plot

    By default, the plotly (plotlyexpress) scatter plot offer color bar feature. Can we have this feature implemented in iplot(kind='scatter')?

    px.scatter pxscatter

    iplot scatter iplotscatter

    opened by kannansingaravelu 0
  • iplot('ratio') shoud sync X axis by default

    iplot('ratio') shoud sync X axis by default

    in a ratio diagram, when zoom in the lower 'ratio' part , the main diagram is not zoomed together, and vice versa. No param in iplot() can control this so far.

    I think it's better synchronized by default.

    opened by Binger-cn 1
  • QuantFig and iplot

    QuantFig and iplot

    Dear all, I started using PyCharm for my training on trading algorithm. I need to use iplot() for plot my data = con.get_candles('EUR/USD', period='m1', number=20); qf =cf.QuantFig(data, title='EUR/USD', legend ='TOP',name ='EUR/USD')

    Can I use QuantFig and iplot() in PyCharm? If yes how? If not How can I plot it in PyC? Thanks

    opened by IngDalSoler 0
  • Question: Is it possible to download raw data that qf calculates

    Question: Is it possible to download raw data that qf calculates

    Hi, I would like to know if it's possible to download raw data that are used to plot. I've my data and want to add RSI to them doing following:

    qf = cf.QuantFig(df = ge.loc["2019":])
    qf.add_rsi(periods = 20, rsi_upper = 70, rsi_lower = 30)
    qf.iplot(title = "GE", name = "GE")
    

    The output is awesome, but I would like to learn RSI values on particular days.

    Please advise.

    opened by kkrzysiek11 0
Owner
Jorge Santos
Jorge Santos
Plotly Dash Command Line Tools - Easily create and deploy Plotly Dash projects from templates

??️ dash-tools - Create and Deploy Plotly Dash Apps from Command Line | | | | | Create a templated multi-page Plotly Dash app with CLI in less than 7

Andrew Hossack 50 Dec 30, 2022
A curated list of awesome Dash (plotly) resources

Awesome Dash A curated list of awesome Dash (plotly) resources Dash is a productive Python framework for building web applications. Written on top of

Luke Singham 1.7k Dec 26, 2022
The interactive graphing library for Python (includes Plotly Express) :sparkles:

plotly.py Latest Release User forum PyPI Downloads License Data Science Workspaces Our recommended IDE for Plotly’s Python graphing library is Dash En

Plotly 12.7k Jan 5, 2023
The interactive graphing library for Python (includes Plotly Express) :sparkles:

plotly.py Latest Release User forum PyPI Downloads License Data Science Workspaces Our recommended IDE for Plotly’s Python graphing library is Dash En

Plotly 8.9k Feb 18, 2021
Custom Plotly Dash components based on Mantine React Components library

Dash Mantine Components Dash Mantine Components is a Dash component library based on Mantine React Components Library. It makes it easier to create go

Snehil Vijay 239 Jan 8, 2023
A Simple Flask-Plotly Example for NTU 110-1 DSSI Class

A Simple Flask-Plotly Example for NTU 110-1 DSSI Class Live Demo Prerequisites We will use Flask and Ploty to build a Flask application. If you haven'

Ting Ni Wu 1 Dec 11, 2021
A dashboard built using Plotly-Dash for interactive visualization of Dex-connected individuals across the country.

Dashboard For The DexConnect Platform of Dexterity Global Working prototype submission for internship at Dexterity Global Group. Dashboard for real ti

Yashasvi Misra 2 Jun 15, 2021
Peloton Stats to Google Sheets with Data Visualization through Seaborn and Plotly

Peloton Stats to Google Sheets with Data Visualization through Seaborn and Plotly Problem: 2 peloton users were looking for a way to track their metri

null 9 Jul 22, 2022
A shimmer pre-load component for Plotly Dash

dash-loading-shimmer A shimmer pre-load component for Plotly Dash Installation Get it with pip: pip install dash-loading-extras Or maybe you prefer Pi

Lucas Durand 4 Oct 12, 2022
Regress.me is an easy to use data visualization tool powered by Dash/Plotly.

Regress.me Regress.me is an easy to use data visualization tool powered by Dash/Plotly. Regress.me.-.Google.Chrome.2022-05-10.15-58-59.mp4 Get Started

Amar 14 Aug 14, 2022
NumPy and Pandas interface to Big Data

Blaze translates a subset of modified NumPy and Pandas-like syntax to databases and other computing systems. Blaze allows Python users a familiar inte

Blaze 3.1k Jan 1, 2023
Sparkling Pandas

SparklingPandas SparklingPandas aims to make it easy to use the distributed computing power of PySpark to scale your data analysis with Pandas. Sparkl

null 366 Oct 27, 2022
Create HTML profiling reports from pandas DataFrame objects

Pandas Profiling Documentation | Slack | Stack Overflow Generates profile reports from a pandas DataFrame. The pandas df.describe() function is great

null 10k Jan 1, 2023
A high-level plotting API for pandas, dask, xarray, and networkx built on HoloViews

hvPlot A high-level plotting API for the PyData ecosystem built on HoloViews. Build Status Coverage Latest dev release Latest release Docs What is it?

HoloViz 697 Jan 6, 2023
A GUI for Pandas DataFrames

PandasGUI A GUI for analyzing Pandas DataFrames. Demo Installation Install latest release from PyPi: pip install pandasgui Install directly from Githu

Adam 2.8k Jan 3, 2023
Bokeh Plotting Backend for Pandas and GeoPandas

Pandas-Bokeh provides a Bokeh plotting backend for Pandas, GeoPandas and Pyspark DataFrames, similar to the already existing Visualization feature of

Patrik Hlobil 822 Jan 7, 2023
Joyplots in Python with matplotlib & pandas :chart_with_upwards_trend:

JoyPy JoyPy is a one-function Python package based on matplotlib + pandas with a single purpose: drawing joyplots (a.k.a. ridgeline plots). The code f

Leonardo Taccari 462 Jan 2, 2023
Interactive plotting for Pandas using Vega-Lite

pdvega: Vega-Lite plotting for Pandas Dataframes pdvega is a library that allows you to quickly create interactive Vega-Lite plots from Pandas datafra

Altair 342 Oct 26, 2022
Create HTML profiling reports from pandas DataFrame objects

Pandas Profiling Documentation | Slack | Stack Overflow Generates profile reports from a pandas DataFrame. The pandas df.describe() function is great

null 6.8k Feb 18, 2021