dataframe-textual 0.2.1__py3-none-any.whl → 0.3.0__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -6,6 +6,7 @@ import polars as pl
6
6
  from rich.text import Text
7
7
  from textual.app import ComposeResult
8
8
  from textual.coordinate import Coordinate
9
+ from textual.renderables.bar import Bar
9
10
  from textual.screen import ModalScreen
10
11
  from textual.widgets import DataTable
11
12
 
@@ -136,6 +137,8 @@ class RowDetailScreen(TableScreen):
136
137
  *_format_row([col, val], [None, dtype], apply_justify=False)
137
138
  )
138
139
 
140
+ self.table.cursor_type = "row"
141
+
139
142
  def on_key(self, event):
140
143
  if event.key == "v":
141
144
  # Filter the main table by the selected value
@@ -188,6 +191,7 @@ class FrequencyScreen(TableScreen):
188
191
  self.table.add_column(Text(column, justify=dc.justify), key=column)
189
192
  self.table.add_column(Text("Count", justify="right"), key="Count")
190
193
  self.table.add_column(Text("%", justify="right"), key="%")
194
+ self.table.add_column(Text("Histogram", justify="left"), key="Histogram")
191
195
 
192
196
  # Get style config for Int64 and Float64
193
197
  ds_int = DtypeConfig("Int64")
@@ -204,16 +208,16 @@ class FrequencyScreen(TableScreen):
204
208
  style=dc.style,
205
209
  justify=dc.justify,
206
210
  ),
207
- Text(
208
- str(count),
209
- style=ds_int.style,
210
- justify=ds_int.justify,
211
- ),
211
+ Text(str(count), style=ds_int.style, justify=ds_int.justify),
212
212
  Text(
213
213
  f"{percentage:.2f}",
214
214
  style=ds_float.style,
215
215
  justify=ds_float.justify,
216
216
  ),
217
+ Bar(
218
+ highlight_range=(0.0, percentage / 100 * 10),
219
+ width=10,
220
+ ),
217
221
  key=str(row_idx + 1),
218
222
  )
219
223
 
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: dataframe-textual
3
- Version: 0.2.1
3
+ Version: 0.3.0
4
4
  Summary: Interactive CSV/Excel viewer for the terminal (Textual TUI)
5
5
  Project-URL: Homepage, https://github.com/need47/dataframe-textual
6
6
  Project-URL: Repository, https://github.com/need47/dataframe-textual.git
@@ -9,7 +9,7 @@ Project-URL: Bug Tracker, https://github.com/need47/dataframe-textual/issues
9
9
  Author-email: Tiejun Cheng <need47@gmail.com>
10
10
  License: MIT
11
11
  License-File: LICENSE
12
- Keywords: csv,data-analysis,interactive,polars,terminal,textual,tui,viewer
12
+ Keywords: csv,data-analysis,excel,interactive,polars,terminal,textual,tui,viewer
13
13
  Classifier: Development Status :: 3 - Alpha
14
14
  Classifier: Environment :: Console
15
15
  Classifier: Intended Audience :: Developers
@@ -29,7 +29,6 @@ Classifier: Topic :: Utilities
29
29
  Classifier: Typing :: Typed
30
30
  Requires-Python: >=3.11
31
31
  Requires-Dist: polars>=1.34.0
32
- Requires-Dist: rich>=14.2.0
33
32
  Requires-Dist: textual>=1.0.0
34
33
  Provides-Extra: dev
35
34
  Requires-Dist: textual-dev>=1.8.0; extra == 'dev'
@@ -4,10 +4,10 @@ dataframe_textual/common.py,sha256=3zzhI__F_hoOFDRe-wt-oTfMDFik1ohraIa6rXcVit8,6
4
4
  dataframe_textual/data_frame_help_panel.py,sha256=SQ2lulb1SPxItR9tMvIgOzzeCcW9SB1rRojAcwZ7Vis,2730
5
5
  dataframe_textual/data_frame_table.py,sha256=u_gMc-U57efgIRoCfOR65clieK7M7FUg45jjUb06V_w,50079
6
6
  dataframe_textual/data_frame_viewer.py,sha256=BP-pCYIG5bEDFkUmUyA3sxWc3z1zI_viClDZlT-s_uE,11715
7
- dataframe_textual/table_screen.py,sha256=Pq6aM-vntDxLj1r5Uzke6_pzbuhO-VrX_V12ezwm3uM,10588
7
+ dataframe_textual/table_screen.py,sha256=uD98fGcvuMjL8WSbwwCV6a_YyuGlyJ364JnaL1dHwQ0,10807
8
8
  dataframe_textual/yes_no_screen.py,sha256=z7MEVTMepFuGWFIthhQlAT3m69D6lgIl4tb2_oJAWWQ,13207
9
- dataframe_textual-0.2.1.dist-info/METADATA,sha256=jACe80kpq-4nzJZ0Ra5MwSnezCOMbJb4hTe9obRUWaI,17131
10
- dataframe_textual-0.2.1.dist-info/WHEEL,sha256=qtCwoSJWgHk21S1Kb4ihdzI2rlJ1ZKaIurTj_ngOhyQ,87
11
- dataframe_textual-0.2.1.dist-info/entry_points.txt,sha256=FkXDHVYYtGud6F2Jm2X9OMFAuFrSflNfgcNP5c2469M,70
12
- dataframe_textual-0.2.1.dist-info/licenses/LICENSE,sha256=AVTg0gk1X-LHI-nnHlAMDQetrwuDZK4eypgSMDO46Yc,1069
13
- dataframe_textual-0.2.1.dist-info/RECORD,,
9
+ dataframe_textual-0.3.0.dist-info/METADATA,sha256=WM9nEZTY11crnSJmVtZ02J-7SWTTOp-yPGrmlSWg7TQ,17109
10
+ dataframe_textual-0.3.0.dist-info/WHEEL,sha256=qtCwoSJWgHk21S1Kb4ihdzI2rlJ1ZKaIurTj_ngOhyQ,87
11
+ dataframe_textual-0.3.0.dist-info/entry_points.txt,sha256=FkXDHVYYtGud6F2Jm2X9OMFAuFrSflNfgcNP5c2469M,70
12
+ dataframe_textual-0.3.0.dist-info/licenses/LICENSE,sha256=AVTg0gk1X-LHI-nnHlAMDQetrwuDZK4eypgSMDO46Yc,1069
13
+ dataframe_textual-0.3.0.dist-info/RECORD,,